|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * k* [7 C0 n7 s% z
# c& N( R" p& [. j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ x1 O0 t$ r% e/ ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! |% t& i/ y# h2 F
swarm.SignatureNotFoundException
8 W, ~4 i$ O* c: m' r8 K at swarm.Selector.<init>(Selector.java:76), Z# w! K& `+ P( H- A$ H& x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
p0 x" P% s% i1 g3 z( G% k/ U. ~' E at ActionGroupDemo.main(ActionGroupDemo.java:67)/ e6 w- E8 [) m) f
9 T# { q9 F w3 H8 w0 a
( y: C( \- E W; G5 g
import swarm.objectbase.SwarmImpl;# P0 Y8 `1 L# b. Q
import swarm.objectbase.Swarm;& i; p3 U$ ?' D! u7 Z
import swarm.activity.ScheduleImpl;, n C2 m" | R( R: E
import swarm.activity.Activity;
7 y- J+ @ ]* ]import swarm.activity.ActionGroupImpl;- w T m! ~3 F. ^5 h$ F
import swarm.collections.ListImpl;
8 E M) v: _1 e6 `+ oimport swarm.defobj.Zone; 5 g+ X+ `" J# b/ k* h
import swarm.Globals;
& l7 l2 H# d' \7 nimport swarm.Selector;
1 O# R' j7 L3 Q: o# C) Cimport swarm.activity.ActionGroup;
8 l6 F# R4 B! ]9 I3 z Iclass Agent {4 E% t) e3 R% C L5 _
char id;
- W" l2 _2 B, c6 K! h9 }: H* l" s) ]% Y% J, N8 D! }1 g9 b4 Y
Agent(char id) {
0 ^4 `4 y; k% @% ]2 C this.id = id;
5 d# }( T; h8 B2 m `) o+ I }
( y% a0 I: `3 |- P3 ~& p9 r8 X& V: r7 X' G/ ~9 J( d( W) {# f1 Q
public void agentStep() {+ E1 W% ]8 L4 X
System.out.println(id + ":" + Globals.env.getCurrentTime());; {4 [! I S3 Q% G
}
. K9 f2 H4 Z( k5 U) w; x}
5 l* I" f9 t' e6 Z/ s8 c+ Q, H. |" V8 c
public class ActionGroupDemo extends SwarmImpl {
4 p9 p* G- N% x+ u( e: D ScheduleImpl schedule;
1 S( V; w# Q0 L [ ActionGroupImpl actionGroup;3 s# b8 Z7 J- f! o
ListImpl list;+ F7 ~* J# y) f+ h- \# B" p( w
char Id = 'a';8 s' h8 O# {* |; h2 y1 y
9 Y1 { U- j4 Z
ActionGroupDemo(Zone aZone) {8 ? S+ Z! ~' f, P# U7 E9 a% ]( z
super(aZone);
6 X; ?5 e/ k' h# V; M$ [- [& {. X$ Q* [ list = new ListImpl(aZone);6 y( c! l) Y. ^! s X. o+ K
swarmSetp();5 z$ W4 F( O+ P% k, o
actionGroup = new ActionGroupImpl(aZone);( A) ~. J2 E/ m+ q6 l* h3 _: j
schedule = new ScheduleImpl(aZone);
2 b( X4 Y4 k: M) D$ [ try {; U; o- e$ ]3 h, N: T n
Selector agentSel = new Selector(Agent.class, "agentStep", false);: d" C8 t' @. t* t+ }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 S) @7 I4 ]" m! k
& `6 l/ Y1 O3 z. w
actionGroup.createActionForEach$message(list, agentSel);2 V4 K) I/ e" L
actionGroup.createActionTo$message(this, swarmSel);" e# |& c2 |9 a* l; r# n2 t4 L
schedule.at$createAction(0, actionGroup);4 q1 C" c% N3 o* r
schedule.at$createAction(1, actionGroup);. O4 F3 F1 m. f: d& a* _7 A
schedule.at$createAction(2, actionGroup);
! w1 b2 v0 n3 |5 D; t- v3 m/ F4 t2 U2 ~; T/ k. v
} catch (Exception e) {
/ }& ~3 J3 g+ ?& M e.printStackTrace(System.err);& V: h {2 U- S) b
//System.out.println(e);! g& c Q8 c/ d- r& n# s
System.exit(1);# z" u9 L# V) I2 J& @, z
}
" f ~( W9 a- ~$ O( g- T
, k' J, e3 l. t1 h1 j; F1 X) t- C; n4 U1 K
}
& F* l" [/ l/ v+ N; B$ D5 @5 V
$ r" V2 Y, r, Q9 r1 X private void swarmSetp() {
/ g; B4 g7 {2 `0 Z: i list.addLast(new Agent(Id));* a2 b. `; b$ j; c! D+ q
Id++;* q# _" r- G6 y2 U* Q3 z
}
7 L, [) O2 x, k; S1 i! k- v, T! Q+ C/ Z
public Activity activateIn(Swarm context) {8 \1 H9 g) ]7 G& @& Q# @
super.activateIn(context);
' ^- w/ w9 b" n0 ?) { schedule.activateIn(this);' n' }8 O& [5 g. _
return getActivity();
# l8 ~+ {7 m$ |: R }
. x& s% u4 [+ b
8 l; I* s: a/ T public static void main(String[] args) {
! p, x( A b6 P( ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" i$ e+ k4 @: H, u9 u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
e5 l1 h. P6 s( L" h$ s8 ~ swarms.buildObjects();! j2 o$ {- k# ]. v2 A# |& @
swarms.buildActions();8 y) g7 }/ E1 l: t
swarms.activateIn(null).run();* N& ]5 a5 o2 s: j. f
}
3 W% A9 R. }1 Z- c/ u6 k3 q+ x
} |
|