|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ V) p1 E. t( z. L
5 h8 h, N( c# M% a9 L1 H; q* {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 x5 t" v! K7 ^2 Q. S4 @! N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." A9 V% A+ a! K; B& ?9 g
swarm.SignatureNotFoundException
, @0 s A* m$ w" a5 l5 F at swarm.Selector.<init>(Selector.java:76)( x) p* Y( f7 a$ T8 n. A9 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# H& B0 D2 C# m6 h
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# W6 v ?: i2 c1 A3 E# W
9 d' t6 ~4 H( k. H( @* J h5 y: {2 z7 _% G
import swarm.objectbase.SwarmImpl;
+ s4 V) K! W/ i7 z4 u% G3 T: i4 yimport swarm.objectbase.Swarm;
% _5 @9 X1 h6 f( N8 M; n+ ]; }7 |import swarm.activity.ScheduleImpl;
% B9 t: x4 ^, ?5 Iimport swarm.activity.Activity;
: l8 A3 T6 m& j. H: Eimport swarm.activity.ActionGroupImpl;$ T5 v# k+ `8 Q7 L- }% U
import swarm.collections.ListImpl;
& R0 P5 t+ o3 J5 R0 X0 g' @import swarm.defobj.Zone;
9 P5 h. h. _, l6 t. yimport swarm.Globals;6 g0 n x; M# c% h5 y. Q
import swarm.Selector;4 L; z2 H2 s: ~9 H; X. V$ o
import swarm.activity.ActionGroup;
( V. @$ u4 H4 {8 vclass Agent {
/ y) Z" D) q" M3 ?4 Q: H6 n char id;
9 N: J) N0 K$ G# s: J9 m! ]& V, x! @# n9 \1 T$ f r! ?' }
Agent(char id) {* y! B) n1 T; m3 [, P; f2 e/ ]
this.id = id;
) l) M' g; t, j$ R }
0 p! I9 n5 g3 `/ w0 G3 L( V# x; V
/ A% {1 I; y: z' b P# V public void agentStep() {& P) T2 H& i9 {0 M6 @3 {
System.out.println(id + ":" + Globals.env.getCurrentTime());# m: g- G0 `: m' L
}
* O- M) Z; p5 t}
7 s5 x' N) [- G6 c. m# j1 e
. E+ [7 s, H7 k/ x3 l+ v0 I4 _; Lpublic class ActionGroupDemo extends SwarmImpl {
7 {; B/ \6 C' w( C1 x1 |$ B2 p8 Q% { ScheduleImpl schedule;! S3 X h8 p8 b$ C' F! J
ActionGroupImpl actionGroup;% z5 E9 t6 h/ |- q( D
ListImpl list;
6 |/ J W: g( v0 S: e7 } char Id = 'a';" P$ J' W# I& U
5 |, `; D) i" t2 @! H- D ActionGroupDemo(Zone aZone) {6 G0 Z J7 ^1 D
super(aZone);
5 |( V* ?3 [/ S1 ` v/ n list = new ListImpl(aZone);
3 S8 T' m _, ?* l swarmSetp();- O8 m8 E# w1 G5 f$ J
actionGroup = new ActionGroupImpl(aZone);
. Y5 d: Q* u: x1 g6 }8 f/ V! u schedule = new ScheduleImpl(aZone);
* _/ f1 p* l+ e try {
* l& n& O& A+ k, B6 [- g R" N Selector agentSel = new Selector(Agent.class, "agentStep", false);( }- m: ~1 H0 V8 u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
G/ n2 b" Q: N1 ]% \' W, r: P
- |4 [4 _& P# H0 f1 N actionGroup.createActionForEach$message(list, agentSel);$ D2 _- |3 X' Z' g1 E1 d$ V/ N; O
actionGroup.createActionTo$message(this, swarmSel);
& K* y6 L8 N, f( \ schedule.at$createAction(0, actionGroup);
& k0 Y# B4 M7 |! e- y! ]# M schedule.at$createAction(1, actionGroup);
, R5 x; b* [4 Q' y( o! `* H0 ^ schedule.at$createAction(2, actionGroup);
$ @# c7 M) G* x3 g: ~
) T5 R C5 G) G } catch (Exception e) {
+ A: @$ E* w% ?' T% Y# X e.printStackTrace(System.err);
. G" G9 m/ ?. z3 U- K //System.out.println(e);
' _3 q: T4 W1 I& H System.exit(1);
# k* l3 Q$ z2 X7 j' u) M8 a7 Z }
4 y- g/ j. y) ^$ K/ n% k j; i
4 j6 j4 }; \( D9 S+ s1 @4 n7 x; A- U1 i
}/ a: C' A1 w d: ]( V( d
% J# E' [1 n/ G$ W. h
private void swarmSetp() {- P* i1 C3 ]+ |5 a3 t- x1 L& M
list.addLast(new Agent(Id));
' T. P) |9 r# c. t: Y Id++;
. l( s2 m* H: _( z% } }6 X6 S" ?1 o3 X* V
0 ]% C( o. G- d
public Activity activateIn(Swarm context) {
/ F# t \, m# c) z4 o. G super.activateIn(context);
% B4 r) W) D) e; g schedule.activateIn(this);" k1 O9 u' R2 }# C8 R
return getActivity();
( V" z% i! Y9 F) M }9 Q) a3 l" z: g4 j. N& W( H5 g
& h( o: J2 i* D o8 E7 z6 [8 F9 T/ M; \ public static void main(String[] args) {
7 g: H8 ?$ [+ q ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# |! B* g' |1 b' z$ V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ B8 s2 _( l/ {+ {0 `
swarms.buildObjects();$ w! I, l+ R6 f/ X/ u
swarms.buildActions();
; I" S* Y" \& U swarms.activateIn(null).run();% [( N: S, M2 j# e) x
}, Z7 @8 T/ [6 \& v: z' W5 r% n4 D
. j8 _. b' g; |2 F* I} |
|