|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 C1 Q6 E# M, W6 j; ^' v. B
/ f; R/ u% a! @. z; E2 O/ B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% B9 k# e1 n" \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& y2 ^. ~1 C1 k6 K* f1 y
swarm.SignatureNotFoundException: Q. c* V+ w2 i1 y% o
at swarm.Selector.<init>(Selector.java:76)4 ] d6 r3 M1 f( R# v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, Z- G4 h& @; [) V) `+ m5 k: S/ \' R at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 R& I- e- h( C# o2 I! P7 _6 W5 D
9 N% J$ g( {8 q% ~7 Q! o) Y- q: v: L1 F1 ^& K7 ?- a4 v, ^. P9 r$ x5 t
import swarm.objectbase.SwarmImpl;) k- f, E/ K: P5 F' h6 H8 D& B
import swarm.objectbase.Swarm;
/ T/ g3 F1 g7 f7 t2 R; [3 jimport swarm.activity.ScheduleImpl;
- C: u7 v) R) Y- S* Bimport swarm.activity.Activity;1 h- y# `6 b, [& z" l0 C
import swarm.activity.ActionGroupImpl;, w! y4 h) A) d) N5 ?
import swarm.collections.ListImpl;0 W1 t/ i* ?; M/ F4 Q
import swarm.defobj.Zone; - M: j& r3 |3 ?; z0 l
import swarm.Globals;
( a9 Z& q6 K0 yimport swarm.Selector;
4 @1 X) | x% y# {import swarm.activity.ActionGroup;
0 x6 @0 P1 ~: ^+ h/ `1 [$ Yclass Agent {& b# t/ I: N3 i9 C; W
char id;9 d. v9 |" R2 a) o* t
; e5 G v) o7 s+ A Agent(char id) {% _( ^8 P" a9 Z" n7 W: y
this.id = id;
+ g4 k( x5 r, `# j5 o$ D }
+ H; z0 M: ^: F# n6 h: e5 V$ t3 W- m | R; `6 }
public void agentStep() {
/ { Y3 q( ~- e {7 n! K5 r. q System.out.println(id + ":" + Globals.env.getCurrentTime());
, n% g! G. C1 Y" W" p( R* [$ F2 T; x; v }6 Z; J+ p$ @0 E: a
}, f; u$ [- ?0 T) N3 o, K& j1 B
. `* [' Y; W; A: ?4 A
public class ActionGroupDemo extends SwarmImpl {
6 P! j2 c0 _# \ ScheduleImpl schedule; L+ f# o6 f \( B% C9 ]
ActionGroupImpl actionGroup;
7 s$ e4 x H- J. Z2 { ListImpl list;
/ _* m" B9 O s$ p char Id = 'a';* J! c4 K! b5 }
# Z2 t# j, m2 _' B/ h/ _ ActionGroupDemo(Zone aZone) {- h* ?4 j, }$ J" [2 u3 e' k
super(aZone);3 j2 _$ z1 b0 O0 m l7 W) U
list = new ListImpl(aZone);
6 m. E; b' X5 U3 h$ u swarmSetp(); N4 R2 i- t6 d- S1 K
actionGroup = new ActionGroupImpl(aZone);
" `' a5 a* {2 C% @ m" Z4 d* A) d schedule = new ScheduleImpl(aZone);7 p; b4 y0 ?2 u9 C. j* G
try {
H' ^6 H* L) W' K5 Z& r. [ Selector agentSel = new Selector(Agent.class, "agentStep", false);
! P( P: I c: @% F+ c8 ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ v$ z0 B( p4 H/ {0 m
W- w2 J+ V3 {/ a* `* j actionGroup.createActionForEach$message(list, agentSel);
) i- y5 M2 q7 V* o actionGroup.createActionTo$message(this, swarmSel);
s3 H5 K5 x8 T8 f schedule.at$createAction(0, actionGroup);; n: K! R, U& q8 |- l2 q4 m/ _
schedule.at$createAction(1, actionGroup);
9 [7 M. \8 T( ~% t3 s5 j7 W4 Y4 | schedule.at$createAction(2, actionGroup);! P) N. ]6 Z" e8 `( j% q. i# z
7 d. m5 h8 U6 c$ p: q } catch (Exception e) {
7 c% I# s5 ~1 _6 I3 h, Z. k e.printStackTrace(System.err);9 o' T: S% R% O$ e6 K) d# }0 K
//System.out.println(e);, O) ~5 w! }. O; w
System.exit(1);3 I) [- R+ \; @" \0 e
}
. }8 f! t* U0 q; k0 Q! f5 K" L. K$ _+ N
7 S; {' _- c' c+ o
}
7 h7 q4 G# C) @
( L8 c& W7 z" l+ \5 g" m) q$ h private void swarmSetp() {( W1 ]; u9 t4 n; S$ U; b0 g, L# g
list.addLast(new Agent(Id));
+ W) `2 O& P& d9 ^2 r Id++;+ M' k+ h4 a z: p5 O
}+ X4 y* Q5 r# M7 s( Y& e% b& m/ B& m
" X/ p7 r8 [% d% Z; v public Activity activateIn(Swarm context) {! I/ G, V7 ?! v' J( V+ {, j' ^5 f
super.activateIn(context); M# ]# s: O2 `4 t3 C# C; U1 p# h
schedule.activateIn(this);( k9 m4 G5 |+ Q, b
return getActivity();
, U) w- e0 n' K& {6 O }/ M+ m( N) H7 n
( F' F( }+ ~$ a
public static void main(String[] args) {
! `% [( B" i, s7 O( x; i* o: n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! K! o0 w N5 u2 X) u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! Z9 [2 y! W" c& j4 V3 E2 A
swarms.buildObjects();
! A0 `: {6 r5 f2 i: f2 I/ c8 g swarms.buildActions();% k1 w. v3 X7 _
swarms.activateIn(null).run();
+ v; [0 g2 C n! r) F& k2 L: Y }% A- M- A' \4 ?* |
) ~9 u& D& k/ C( `, G7 s( }3 M
} |
|