|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. g" Y7 d7 n B3 `1 E: S8 L0 s* t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' h6 f* u( J& t$ V0 v& S& u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 m0 J# z4 w/ Mswarm.SignatureNotFoundException
K$ o0 D1 m! a at swarm.Selector.<init>(Selector.java:76)
8 I$ l9 n$ t4 Z4 x* ] at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 x' ^/ K [+ J; A8 n* b& D7 c# ] at ActionGroupDemo.main(ActionGroupDemo.java:67)7 M8 H" c. W1 R. a _1 h# _7 z: b
* @* ?8 _1 f9 J9 ~ E$ V( u
0 w! o+ P! n) }5 Himport swarm.objectbase.SwarmImpl;
; \& Z) G1 x, f. limport swarm.objectbase.Swarm;
5 G& ]" `( J/ K5 C. f' l. ]0 [import swarm.activity.ScheduleImpl;
8 r0 Y, G/ S1 X" k$ O! R: z( ^' k& A0 k, aimport swarm.activity.Activity;9 h) g& f* N/ O3 p% T% g
import swarm.activity.ActionGroupImpl;
0 `4 j; {5 ?" h& W7 timport swarm.collections.ListImpl;
) |+ ~* q- G5 Ximport swarm.defobj.Zone;
" ]' J( O3 R- {- Q% z7 H/ w- Himport swarm.Globals;
0 l. M+ @" ~) n* l7 ` n5 yimport swarm.Selector;. v$ Z0 [. r3 o% m6 Y) l' V
import swarm.activity.ActionGroup; 5 ^) W, [; [* Z8 z5 q9 u9 ~! R
class Agent {" q/ p: j+ o- X# G9 _* M+ ?& A
char id; c. f/ Q& ?* L8 H0 G( @) e
& j# z# A4 ?; v Agent(char id) {
8 T- ]+ R* F- I' v& @ this.id = id;2 Z& ]& t, `& h$ `! i% @
}3 Q0 B4 [8 M' p8 r
9 ], U8 {. a4 b! j public void agentStep() {9 p' u& g: o8 R, a: R( q! s
System.out.println(id + ":" + Globals.env.getCurrentTime());! S! [; c5 b4 m$ _
}: U* B) D0 I; l5 N7 Z
}! e+ k; ?9 |4 ~9 M% Y: I% l
( X7 E5 r ^& R2 N
public class ActionGroupDemo extends SwarmImpl {, }" z- b& S: s0 K& x) Y
ScheduleImpl schedule;
4 g+ x! F: g8 L: b ActionGroupImpl actionGroup;$ T' ] n- w2 p$ N. W9 J
ListImpl list;
- s# i5 v9 }9 p* ^1 k8 u char Id = 'a';
5 b+ [6 ^. ]6 J" ^3 Z# g1 q, U, N; a! M; g
ActionGroupDemo(Zone aZone) {+ i# `# i& U y; F- T! c% R
super(aZone);
O6 K# F, T5 ?4 k4 W7 e8 C; h4 s list = new ListImpl(aZone);! O9 l; ~+ p) D( W, K4 Y6 C& r5 W. {
swarmSetp();
8 X2 H3 \0 ^% m. o: W actionGroup = new ActionGroupImpl(aZone);
3 W% J {6 s+ G+ z/ t7 u3 A schedule = new ScheduleImpl(aZone);
2 N$ B+ w* _1 h2 `8 }- A try { H4 V$ i; |* A8 W) x( E; ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);: ]% ~0 W) b5 |: t9 A: y* ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 q* @& t0 h& d8 G! u
3 s1 R6 I" m' T8 V; O" w% R
actionGroup.createActionForEach$message(list, agentSel);
6 i& r- e0 T* }/ z4 D t0 o actionGroup.createActionTo$message(this, swarmSel);
# W! f0 q' C" Q) Z1 n4 A1 n- G A schedule.at$createAction(0, actionGroup);
: w; X- J# d. z$ T# b4 s6 I d: T schedule.at$createAction(1, actionGroup);0 N0 z- t9 v I! k) {, B
schedule.at$createAction(2, actionGroup);- Q0 f: p6 e& i* Z" z
4 P9 S: |- I8 W7 G+ \# t
} catch (Exception e) {, l: O, v) M* Z) r0 o" W0 Z
e.printStackTrace(System.err);$ C/ x$ @# G4 m& e
//System.out.println(e);( H+ |! W" v; }, q
System.exit(1);- C6 N. j" [3 M& I
}
6 Z6 m3 g3 j/ [5 ?1 S+ J; ~) C! B" ~, W" h) ^( a) ]
" p% w1 D" B/ w2 C$ D
}8 ]; e9 `3 D* U- i( t3 T; c# `6 X
7 j f$ [: j1 P# ]' y$ P private void swarmSetp() {
) Q! c0 L0 v' {/ ~ list.addLast(new Agent(Id));
" Z. ^) v5 v7 T, I3 @ Id++;
6 j# `/ U+ P" P' ]7 p C- @ }
' ^+ z: B3 u) _7 y- _' Y
# F( u2 V$ q6 f public Activity activateIn(Swarm context) {) l2 G @* e1 W7 K. S
super.activateIn(context);. [* D: L1 j0 z7 D
schedule.activateIn(this);
" h1 O5 L' ^" \, A. [ return getActivity();. }* _/ ~* {% t" r
}
8 y6 k. _) e. B& o& m* k R9 F; }1 y* B8 u/ }: x
public static void main(String[] args) {, F0 H4 ]* I: W$ O: k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
g' ]0 k7 ^5 {2 A$ n/ d( u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 o" [/ K( o; Z9 a" @: h8 r. y z, \% | swarms.buildObjects();8 l. u: S( S. e
swarms.buildActions();
3 a7 ]# T9 k v9 \6 d, D swarms.activateIn(null).run();5 ], |' b. P. H
}
: ?" Y$ ~) B& J9 B2 v! e N+ ?/ Q9 s) d% ^5 t
} |
|