|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' d5 j- H7 ]8 K; ?. E1 A+ }
2 q* I$ [2 [# Y/ e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ o X% H C% l x0 }, ? @% p s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ \6 E0 s. B" i- T3 y
swarm.SignatureNotFoundException% U/ p& U4 Q. D0 G$ g
at swarm.Selector.<init>(Selector.java:76)
, q$ v$ S8 Q" b! z; { at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 K1 j8 L- r* ?5 ^/ Y# w
at ActionGroupDemo.main(ActionGroupDemo.java:67) d+ c x( R' L5 |
d+ ?4 Q2 t) E
; q$ v. g% Z6 J- I0 X1 b% I
import swarm.objectbase.SwarmImpl;
2 w) C6 [1 `* e4 G2 E9 L: R8 I5 Limport swarm.objectbase.Swarm;3 p2 G/ c# Q3 J* l' h
import swarm.activity.ScheduleImpl;
4 }* j" Z# T- v( e' [1 w! r/ fimport swarm.activity.Activity;
1 e9 g1 u) I K. kimport swarm.activity.ActionGroupImpl;4 c5 H% C) {7 Y4 f1 E
import swarm.collections.ListImpl;
?1 n! M2 v7 x5 o' {4 Qimport swarm.defobj.Zone; 6 @; x# k( q1 }; s+ \' i8 y
import swarm.Globals;
. k8 |5 a* O. O3 Iimport swarm.Selector;, L! r$ j } C1 |4 B
import swarm.activity.ActionGroup; ) x p0 L2 J& J/ ?: k* W$ A: N
class Agent {
) z, s! A0 d6 a! F) e char id;) A' b6 O8 i: [4 O0 }- x1 X
5 v2 k1 A, l6 \5 z2 s- I Agent(char id) {1 L/ J5 g5 u. t1 M
this.id = id;' `4 E p9 K7 w: V3 B
}" @0 U; y- f5 C1 S
. c* o' n8 [) E public void agentStep() {) j" ] s+ n2 J- Q+ t- h; w" _
System.out.println(id + ":" + Globals.env.getCurrentTime());# p1 y% p& c7 a: D5 U: P! [8 s
}
9 B- K2 C: P2 A$ o+ R}: I1 [8 `3 X; j
, P# @0 z" A4 r, D1 o
public class ActionGroupDemo extends SwarmImpl {4 f% F g9 d8 \, o. C
ScheduleImpl schedule;
- i+ a" A8 x( W& u ActionGroupImpl actionGroup;
: s. i7 _7 s" p1 {* y ListImpl list;
; X( X0 ~( ` K9 E1 L char Id = 'a';( h- |, N# p1 E' R$ i
0 u) W) N Y! u4 A/ |' k" ^ ActionGroupDemo(Zone aZone) {
( x9 y2 q, e% D8 r0 Y. g super(aZone);
; p/ l# F7 l) w, _2 M4 H list = new ListImpl(aZone);3 C" w& B! ]# ^* x% `( f. x* V
swarmSetp();
/ i( n0 w8 W a9 i actionGroup = new ActionGroupImpl(aZone);
8 J1 E0 L" u. g. X w( S/ R/ ? schedule = new ScheduleImpl(aZone);7 A% t1 Z b) _; e( s5 |# ?- d- v
try {7 B: g. b1 n' |1 W6 F8 g/ ]7 f) ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);* D* b8 E6 U/ X2 }" U8 d Q& }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) w8 E& f% l! R$ s& n: o
, S# u3 \9 x2 H actionGroup.createActionForEach$message(list, agentSel);
6 h4 j5 C/ [/ z/ t$ H! n actionGroup.createActionTo$message(this, swarmSel);4 n5 O; l3 A0 f7 q
schedule.at$createAction(0, actionGroup);
# e8 n" x3 | D schedule.at$createAction(1, actionGroup);( y- S8 Q4 i! P6 S J/ ~
schedule.at$createAction(2, actionGroup);
' X/ q1 R! Z9 h7 t
# g! k% ~5 ]$ _ } catch (Exception e) {
* I0 u7 ~5 W% B0 q7 w/ @' ^6 t e.printStackTrace(System.err);1 y# ?& Y& A8 l
//System.out.println(e);: P2 y/ B+ f6 {. m* {+ h6 m
System.exit(1);
3 x9 U5 N8 ?* k }; L7 @ \3 r" f u X
4 c+ c5 w, r1 o) a( ?+ ]
5 N& b" d) K& U: F* j, t3 ` }
" H% Q+ @* @- h% q6 p* e1 s- F, L% V1 b8 A5 Q; \7 f6 M) O7 f
private void swarmSetp() {% X. \) l$ z* I8 \
list.addLast(new Agent(Id));
: E! f. Q6 D0 X. a" p8 Z, P7 N% C Id++;
, u0 k, E, S2 ] }
6 n3 O( P: a1 }) A. V# K( e8 d* y n! ^
0 Q8 f# Z$ H' N! F5 O4 \ public Activity activateIn(Swarm context) {2 r; C: I; e; d2 [# `5 z7 @
super.activateIn(context);1 ]! r% W" R& M% q& L& }' ~
schedule.activateIn(this);7 w7 C8 f0 l& i0 H% P/ x+ ?
return getActivity();4 |2 l7 a/ |. |
}0 J+ r! j, H6 U; X( ^
9 h& ]" X% S8 z+ P, q& o" p
public static void main(String[] args) {
- C) G0 G4 F( B6 q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 R8 L/ q* P: y& G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 I% y% g H5 K! n* f3 r swarms.buildObjects();- r! c5 Z z0 g& R$ O$ j7 V7 o5 ~
swarms.buildActions();. t4 x/ @$ d2 V# E# S9 w9 D
swarms.activateIn(null).run();
8 e T: r1 x' j1 i% N }
5 l- @9 }& A3 B) k9 J9 f% X9 g0 S% x
( U/ h q& R% T3 H; f} |
|