|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & |8 `* I$ n% L# F
9 W( l* s7 j3 L9 l1 |/ z, J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 r6 D* q2 l# e& o P. d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* F% t6 m) L/ o: L) C% \% i. R
swarm.SignatureNotFoundException: k) t. }7 c% `' E# d
at swarm.Selector.<init>(Selector.java:76) _7 ^4 u6 f- Y: D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* v- g, z; x; s+ l at ActionGroupDemo.main(ActionGroupDemo.java:67)& L8 z) h0 a9 Q7 m Y/ c5 ^) H" \
$ l6 K0 W8 P# {: v& O
/ G* Z$ ]7 b' k1 C, i" o9 gimport swarm.objectbase.SwarmImpl;, z9 q l ^& |/ A. v
import swarm.objectbase.Swarm;
# V. D" y. j4 T7 s5 c3 Nimport swarm.activity.ScheduleImpl;8 e, \0 ?* {8 ~4 Y2 p# K
import swarm.activity.Activity;
3 o: Z. o: P7 l/ M. i; k7 Limport swarm.activity.ActionGroupImpl;
7 \, I' J! ?3 n& aimport swarm.collections.ListImpl;1 }, o h# d7 Z. j# I! X
import swarm.defobj.Zone; 2 j( j/ K" o7 f
import swarm.Globals;# E" r" ^/ A2 ]( b5 E& l
import swarm.Selector;# b+ U, _8 j$ N! M* L& a
import swarm.activity.ActionGroup;
0 ^/ e6 c0 V! ?9 dclass Agent {
% E& e3 \" H; R$ @( r0 h: A char id;4 E' ^, B8 {- M3 |4 `
% y9 r5 y- k9 ^! \0 P0 G Agent(char id) {- B7 \7 X9 I7 k5 B# f. D
this.id = id;
1 e2 m' q$ b4 J- z4 W! _ }; e; O; G9 Z+ A
9 }' n* G1 m+ H# Q; m* V4 E public void agentStep() {
* s, e1 @+ Z, U' l+ s8 Y, s: a3 G System.out.println(id + ":" + Globals.env.getCurrentTime());
7 K% [ \" s" y7 n& X3 M }( W! W& b: n2 m* U
}5 J$ z: ~3 b, ^% ~2 E( T) w
7 R. c& j5 I5 W' `6 H5 [: K: ^. Hpublic class ActionGroupDemo extends SwarmImpl {
+ P% X" L6 [% n( K- N7 P ScheduleImpl schedule;* k5 e( V8 ?1 X- h6 H/ n
ActionGroupImpl actionGroup;
; I6 O8 m8 I- ]+ d- t ListImpl list;/ @; H' ~ T1 T8 i* t, o @
char Id = 'a';2 K4 d6 Q* B9 g) l( H/ m6 B; A
2 X9 z6 F$ K$ W7 q2 G/ T; c ActionGroupDemo(Zone aZone) {
! U6 @) A" j5 q super(aZone);
6 S1 C5 y6 i: d# ~( \* S! F: f9 p list = new ListImpl(aZone);8 i% h% d0 K! l( G. e
swarmSetp();
) Y( m: M f$ Q" ^5 y actionGroup = new ActionGroupImpl(aZone);
0 `3 b, X/ R7 \- g schedule = new ScheduleImpl(aZone);
# F& ^5 t0 _0 i+ \ try {/ T9 C- F7 e, L( r: |3 K0 S
Selector agentSel = new Selector(Agent.class, "agentStep", false);* r! [1 P2 k. ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! r9 T3 A9 m; B* | ) ^% J$ C3 y- d' l$ K2 u/ C
actionGroup.createActionForEach$message(list, agentSel);
1 c' _7 B& ?0 X6 }- R- @8 z; e actionGroup.createActionTo$message(this, swarmSel);3 g: ]0 A+ {# d( s; [
schedule.at$createAction(0, actionGroup);6 I; L1 M* q& u; q4 m& \1 X
schedule.at$createAction(1, actionGroup);+ X% n7 v: g4 T# ?3 |
schedule.at$createAction(2, actionGroup);2 ]! C/ ]' h% Z0 |4 i# J% L7 b$ W
3 U5 o# V# s; H* w- N1 l
} catch (Exception e) {1 n# \/ F8 ~0 H# L
e.printStackTrace(System.err);
) p/ d( s* x2 b6 j7 q/ Z //System.out.println(e);
# \1 Q. l8 r& M System.exit(1);
! E; D p2 i, h, Y; T( z" A }
) a: t% d5 z: P! q9 A( M
! P! ^1 _: X; J* a. a; G% X2 T' A& d0 @2 H# \- u! e! b) H
}! }4 I1 E6 ^( B) E* X" f2 }5 P
8 c# M+ {2 [/ a$ `! ^
private void swarmSetp() {: a8 T1 G+ \& H; b
list.addLast(new Agent(Id));: @. M$ _- c' e
Id++;
8 ]0 N% u* |. y$ Q6 v8 H# J }
" Z7 q$ I' J7 M0 K S: J
, l" K% q1 L% y+ |3 P6 C public Activity activateIn(Swarm context) {5 I* V. _/ t9 x5 O, [. J
super.activateIn(context);( A# Y; W- v7 K
schedule.activateIn(this);! ~+ F) ]; e5 Q9 ^; G5 A
return getActivity();
6 K1 W* f7 f7 N4 b3 V; A! d3 _7 S" U }
% x3 Y5 U4 z P0 g( C2 d0 [
3 r/ q$ b% }/ p3 E) A7 e( p" i) C public static void main(String[] args) {
2 I% `6 v; Q) ]7 h% L$ j Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 A8 Y) h* J Y& w8 F; W& q3 Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" ?% ?) ~. X+ x3 L% b8 g, e9 l
swarms.buildObjects();
+ \6 p: c% Z& _$ q swarms.buildActions();
% o# d! m) @+ m swarms.activateIn(null).run();
2 s7 K. h2 y3 N1 g3 N- C }( l0 ]$ r0 v B. x- p
4 p8 A j0 Y/ A# J" U" c, e
} |
|