|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 g4 m' I( D$ p) r) q2 _' y; x( k1 ^% y L* o* U7 j. \5 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; h& _% `4 ?- _$ [5 ?; w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! |9 g6 G9 e7 ` N) V
swarm.SignatureNotFoundException) {2 m* B8 O; r" ~/ ^
at swarm.Selector.<init>(Selector.java:76)
) y/ @' y- z5 [5 ^9 Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! e& P% A$ v% Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 h" z w0 R, r/ P4 e8 K+ i. i9 H! S3 a' k2 d! }5 S# f( K; H$ k
$ R# x h6 f/ I, k* V* D( Z
import swarm.objectbase.SwarmImpl;
4 `! @! i/ z& O3 g$ U. Simport swarm.objectbase.Swarm;1 Y |: y" g9 ]$ G0 k
import swarm.activity.ScheduleImpl;* S5 V' {; h" M$ o$ A2 H4 H' h( B
import swarm.activity.Activity;
0 J4 n% i! N2 Q; p" C' U2 limport swarm.activity.ActionGroupImpl;
' g' {% h( v/ o/ gimport swarm.collections.ListImpl;
* J# K# D/ |* e3 Cimport swarm.defobj.Zone; L; q. m) t/ b, h) H3 L; P! ]
import swarm.Globals;* {. B8 O5 p- R* o! d) C7 B
import swarm.Selector;1 f1 x3 T2 |6 f
import swarm.activity.ActionGroup; 2 j" `) a% c$ M1 l$ _- I! |! S
class Agent {% Q2 h, M; ], D
char id;0 F8 b& b% g! }/ |! D' n
0 r1 `% ^3 O- |: R3 x7 T Agent(char id) {
0 _/ l( s: R# j3 C7 {* Z& ? this.id = id;7 j$ F' f6 m# i
}( Y; O. S& c- T) q
) h+ O/ Q F; O8 B' l public void agentStep() {0 @0 _6 L* P1 O! c
System.out.println(id + ":" + Globals.env.getCurrentTime());
w4 Q- ?3 @% I* D3 i0 H( u, e }
! D! R, B' X6 Y5 X}
8 T- C4 m+ {8 X! j- C0 |7 f x
9 t2 S0 S# W6 O8 V2 S4 Tpublic class ActionGroupDemo extends SwarmImpl {
9 z- F5 O; Y. N4 z4 @ ScheduleImpl schedule;& S1 H5 `) V# u ~: i4 Y# r
ActionGroupImpl actionGroup;
& T( O$ }2 n2 G ListImpl list;# j9 C2 i5 ?3 ^- Y9 [
char Id = 'a';' H. h! f& o* Z6 r2 ^
4 w" p- t0 d# c5 y* J7 @- q7 K
ActionGroupDemo(Zone aZone) {: x. Y2 E, a2 `8 K5 O
super(aZone);* }1 n) H/ F5 ?; {( p- l0 n- ~6 Z
list = new ListImpl(aZone);
, ~4 a% P8 x* L# m3 q) D8 J, ?6 c" [ swarmSetp();
6 g8 T' q% w1 n) u& s8 E actionGroup = new ActionGroupImpl(aZone);
9 f( b: B) W8 E% z& t) J, z schedule = new ScheduleImpl(aZone);+ h1 b# [/ z8 G, O; u; ]
try {
/ v5 G$ _* V8 Z" r8 b7 |# W6 O Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ f* C" Z% W- w( ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 m; Z; p* ?6 _' B& N; b 7 q+ t( U' X3 I7 c5 s, {
actionGroup.createActionForEach$message(list, agentSel);
7 j: i& T6 P1 f0 M# U4 I actionGroup.createActionTo$message(this, swarmSel);! S3 J9 u q0 F& x7 }
schedule.at$createAction(0, actionGroup);3 @ ?) W$ Z( B8 n( K. D
schedule.at$createAction(1, actionGroup);' w8 y0 `$ v0 W4 }! ?6 O6 Z. q
schedule.at$createAction(2, actionGroup);
& T3 L4 M/ C2 o5 s# O* l% a; A
" E/ d6 D% B/ G8 D } catch (Exception e) {
. i# @) U" h0 J* B e.printStackTrace(System.err);
1 N7 |# x; r. _- b //System.out.println(e);, @0 ~# p# ?( i( y) A
System.exit(1);0 m; D& `: W& G1 K" D, @8 w
}
6 y5 D% V7 W; ?1 [
0 w5 N ^/ ~% N
( N: P$ L9 ^- s }
. e0 o/ }+ A4 {# ?. E
) v2 z# }; ?; k* B ` private void swarmSetp() {$ f% _: L: J$ b5 n
list.addLast(new Agent(Id));
6 \* t9 \- J4 |2 y' B Id++;
0 b, h( l+ _3 q% P9 l }
* n1 h$ J" Q* ]6 d- j- [
% `0 x( a8 V5 u public Activity activateIn(Swarm context) {
3 l, r# H% }; p# P3 l. D super.activateIn(context);
0 c0 K5 r- A1 o. l& }+ M* [ schedule.activateIn(this);) n9 P9 }& z4 S, U3 q' W
return getActivity(); h0 d& V9 @: z c2 q$ m- W1 x
}" w6 L* |4 `2 R; i$ w. y
* M b1 B' {) l! _3 D* n* S
public static void main(String[] args) {
2 I4 o. O7 C1 `9 q6 u' J7 H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 u$ w# Y; ]7 Q6 Q5 n; t Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) g: c: j# U2 z/ t$ g) b( z& m swarms.buildObjects();
" |, U, W. C! T6 { p swarms.buildActions();+ R/ u5 v$ G2 C; }
swarms.activateIn(null).run();* ~1 d6 q3 E. @/ P0 ^8 R( S
}
8 w: v# |7 H) ^3 e' x1 k7 @% E4 y6 }* u! T- G% k7 N, ^2 z/ t
} |
|