|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 z9 d$ V2 R* \ {5 |& _, R# H; `( d* w2 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 q' q1 U( Y% T- y8 K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) d; C( y6 ` M0 R& Hswarm.SignatureNotFoundException
c+ }3 E0 N& x. A, U at swarm.Selector.<init>(Selector.java:76)
; H n; L9 R2 Q: j( {/ F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 q! l, p, Q1 C* J
at ActionGroupDemo.main(ActionGroupDemo.java:67)$ m1 Z9 d: h# j$ d$ `' Y
! \2 ~5 Q! [' V8 b; \* O
( U6 G9 i& i9 K/ ]$ k1 x4 c0 i+ ~- Fimport swarm.objectbase.SwarmImpl;
/ r0 ~/ [, \+ p7 v- ?import swarm.objectbase.Swarm;+ c8 k/ I* L9 E c* I% T. R" r! C
import swarm.activity.ScheduleImpl;
* c4 L) P; S* J$ j1 E$ l: Oimport swarm.activity.Activity;( O# B" j) F+ H6 N s
import swarm.activity.ActionGroupImpl;' v; T+ f" A/ G4 Y: r( a- q
import swarm.collections.ListImpl;
! r! w, k& W z- r7 G& t0 jimport swarm.defobj.Zone;
2 g/ G ?" @3 mimport swarm.Globals;
/ M) o! A- \9 Y% ?8 f9 cimport swarm.Selector;
! _' U- x) ?5 c2 c% d) E- ]import swarm.activity.ActionGroup;
' u. j: p* g! I% w, Hclass Agent {7 P5 A- y$ V. G, F5 }2 m0 z" [. c
char id;
, V. `' r; q# o# @* E
& n7 v, Q4 f4 f( E# d+ a Agent(char id) {
+ U; R# w0 c9 z this.id = id;
+ n. |' E) A4 B }
& |* [' o6 `8 U) G% Q: i: A1 B0 u( W) c6 d% U9 w7 x
public void agentStep() {
! t' w/ z; d6 i: l' P System.out.println(id + ":" + Globals.env.getCurrentTime());
5 E; _4 ^( w3 k6 s" S6 y }6 P* r) Z& x4 r5 o# k( V
}
z% m B, D1 z/ |: f% f# Q9 x a# N2 Q7 O/ q5 g( \4 m {' o
public class ActionGroupDemo extends SwarmImpl {1 ~! k0 l, q2 W, \
ScheduleImpl schedule;
0 X; a' w9 U9 q ActionGroupImpl actionGroup;
' P$ A$ n* b' U- F8 X. \- u ListImpl list;! k4 y! T+ i3 _
char Id = 'a'; i- p' B( s* G" {, Q* m
6 b; M2 Z! Q& @( {2 h
ActionGroupDemo(Zone aZone) {4 C) m. V5 E; ~
super(aZone);
~0 Z6 e- o2 \, a( X h) i1 @% h list = new ListImpl(aZone);
* M0 Y7 q8 g7 k! U! [1 c* A9 ]8 X swarmSetp();
" e8 D6 I+ r. K5 E* U5 ]2 F actionGroup = new ActionGroupImpl(aZone);) X2 \7 |( X$ n: d# w
schedule = new ScheduleImpl(aZone);9 _) s5 a4 o/ ^ U" B
try {0 z6 X0 S- p( P d& Y6 v5 ?* U
Selector agentSel = new Selector(Agent.class, "agentStep", false);* b3 F# N; ?- \ A& G" L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" I1 C; Q5 |" }% F
. b* [- g/ n5 V- m- u/ a
actionGroup.createActionForEach$message(list, agentSel);/ j7 `( M6 O/ F
actionGroup.createActionTo$message(this, swarmSel);7 N0 F$ t2 O& G
schedule.at$createAction(0, actionGroup);
% k2 Y, o/ g! u6 d" M schedule.at$createAction(1, actionGroup);
% X; W$ A: V' o schedule.at$createAction(2, actionGroup);
/ o3 _/ Z7 i( J8 i6 _- z
) Z! t- n0 I; m7 K' p } catch (Exception e) {
$ n' Q! ]6 \5 ^( c, j e.printStackTrace(System.err);
+ G1 g v7 j* R D/ B% i% y+ A2 G //System.out.println(e);
7 n2 @; G+ X( ]1 k System.exit(1);
2 e5 S8 ^, f( @: E/ \% P+ o }
6 J4 [& f- `6 Q) `* n
9 F4 _% f" s' R0 _
2 S( W$ q5 W# J" ~- U }3 e: W5 j9 F7 c
6 A5 a. U8 _: g
private void swarmSetp() {
/ [9 ]% {2 \( n, Z9 a list.addLast(new Agent(Id)); {+ g$ U4 B; r' F
Id++;$ k# ?+ ^9 I! Z8 y
}
" y$ z7 N9 E" o" c# a& m8 d' @$ A& { w! I# }- y
public Activity activateIn(Swarm context) {
! s# \% ?2 h2 W) ]4 |2 r8 w% H super.activateIn(context);
7 `7 w& z3 y( Q schedule.activateIn(this);
. v" M& M- E, \) d return getActivity();
' ?0 a4 [. d+ a( p, C' Y4 e7 f& ` }5 R& D+ l) \% y
9 x- M* @0 y, v' @- M" [8 u public static void main(String[] args) {
$ w: p. k" d3 g- F) I# x, \1 I Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: a3 T( D% l& o0 ~$ | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, K i' j2 s! ~9 l; @( V. J: f
swarms.buildObjects();2 p. p# e- q( N& E; b) L3 L0 o
swarms.buildActions();; c) C, E; ~# z( Y# X1 i. S
swarms.activateIn(null).run();
" i, s# d" N: e2 ^+ Z* H4 y }- n) _6 {. c5 i0 L3 J8 P
- S: }5 l* i2 b* o: g
} |
|