|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* O) E1 B$ @3 d7 \$ }
$ P' ? w& H) J4 P# ^2 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) x6 n1 N3 V+ M6 @; E- V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# \# S. P0 E0 T9 L
swarm.SignatureNotFoundException
( N* T, x. r3 |6 x2 d( e at swarm.Selector.<init>(Selector.java:76)5 |# a. d, c* w l2 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; t; ?2 J0 Y5 ?7 I at ActionGroupDemo.main(ActionGroupDemo.java:67)
" p) x0 u- S% k$ ^) _6 [- O# r! u6 y
; L8 o5 W7 A$ \( p, o* U: i- W
8 s3 e3 p3 `0 L: fimport swarm.objectbase.SwarmImpl;# L, {6 M/ t# B1 ^2 h
import swarm.objectbase.Swarm;* x. g" ]) L% Z* R+ R
import swarm.activity.ScheduleImpl;
& ?% [' Z' v. u) Timport swarm.activity.Activity;+ P' o$ r6 ~/ W+ b+ {- K
import swarm.activity.ActionGroupImpl;
8 p2 h: g$ M7 f+ ~( c9 F9 gimport swarm.collections.ListImpl;
. R# B% Q& n j1 p, c7 c5 Q0 K; @: ]import swarm.defobj.Zone; 3 \5 T" j$ \" o( C9 n+ j6 G: m7 M
import swarm.Globals;8 H5 K9 y6 q2 _6 \" `2 z
import swarm.Selector;. L$ t2 v. v7 h6 w9 i: ^
import swarm.activity.ActionGroup; ' _6 r& e* a% I' o8 v
class Agent {
8 d2 b0 J' s) _( s1 Z; Q6 Y char id;9 g% n, _+ k$ G
& G& g, {3 K4 H+ g. X( N- M# W4 g6 ]; J/ X
Agent(char id) {+ w/ P9 u! o6 \0 C, q+ b8 ^
this.id = id;% H1 H: t1 E0 v9 W/ Z! h" b
}
) R/ t6 B. M- D' W9 ?4 j% ]- L3 z( v; z( T ^: ?: {/ v$ ~/ ?
public void agentStep() {
$ r3 _/ G: l: H4 G" k4 E System.out.println(id + ":" + Globals.env.getCurrentTime());
9 o% |* r6 k1 H; A6 k }' {0 N% P3 C. Z% k( {- [! o
}4 m" y: h" ?( A" e
+ H2 P0 k5 E. c% g* p
public class ActionGroupDemo extends SwarmImpl {+ K; k" Z2 _+ R- t3 p, p7 t
ScheduleImpl schedule;8 |1 G$ P9 I- d9 d# T* F
ActionGroupImpl actionGroup;
X0 o t* c3 ~. l ListImpl list;
' v0 {; ^2 E& I. S# c char Id = 'a';
7 E0 ]6 G: V+ Y4 a* i) q
. K0 g+ f( n2 J0 C; i ActionGroupDemo(Zone aZone) {# s- |1 a2 j/ V( N- }
super(aZone);# E4 R6 l, {1 ?1 j" e/ d; p W" b
list = new ListImpl(aZone);
* F1 G( s+ M9 s1 i; N; \ swarmSetp();- q; D R- F# f& r2 Y
actionGroup = new ActionGroupImpl(aZone);/ f9 e& d: ]) `* n4 g5 g8 a& N
schedule = new ScheduleImpl(aZone);9 D2 r/ o. V$ t1 }! l! h
try {7 K/ c, R. G' m4 t: f
Selector agentSel = new Selector(Agent.class, "agentStep", false);
: y% E s8 J: u6 T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 {5 \! ?% {2 z- J
J: p. K8 ^9 |: N' {/ q8 e
actionGroup.createActionForEach$message(list, agentSel);! M8 X4 p/ P2 m
actionGroup.createActionTo$message(this, swarmSel);: h' R* {8 A }( Y+ B' L, x7 V& F. E
schedule.at$createAction(0, actionGroup);* R8 d, y( v2 \$ n% M( b% ?
schedule.at$createAction(1, actionGroup);
/ Q6 {% _; a0 ]$ U5 x schedule.at$createAction(2, actionGroup);
5 R4 P S( G" ?
2 A! |7 R+ `2 d$ [- B } catch (Exception e) {& F$ B" h: a3 f' Y' p- P5 z
e.printStackTrace(System.err);4 j' O6 J) l! r* Q% j5 X$ o# l
//System.out.println(e);
$ h; S, a0 d( X: L* x7 `+ k System.exit(1);' e: _8 u5 X3 Y; N2 K
}
* X3 V7 R+ P4 {! Q/ `7 Z7 B) B% e1 d/ W
9 K: ~. C7 W, u* w
}
6 c+ H. [, V% f1 \: ?) x" w7 h% d1 l$ q
private void swarmSetp() {
6 C8 v; Q* Y" @1 ^: M# q' h list.addLast(new Agent(Id));; W6 W9 f1 r, C2 u, b$ O6 F# z
Id++;; [' T& Y$ E/ w. _* v) Q
}
: T. o6 E( m6 `- S. y2 p
8 g7 [. V7 a- y9 W* s public Activity activateIn(Swarm context) {
8 k& }. z1 v) ?( V1 w+ R6 T super.activateIn(context);+ `# `2 Y3 a) Q, b
schedule.activateIn(this);# r% K* h# b/ V, S/ t, O5 }
return getActivity();& v6 [* d* _5 B' \
}; l1 ~$ S9 @, u- L
' r9 Y; h2 {* |7 Y3 p' y; n n public static void main(String[] args) {
) E! m9 t' E z& l' G6 M. k Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, f$ M! E- n' W( p Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& e/ @* \& ]# b4 m: n' } swarms.buildObjects();0 x' h5 J! \% M
swarms.buildActions();
, Y8 F. E% s! D! S. g/ o$ K7 l swarms.activateIn(null).run();
6 q& e* B9 B& a' n& x' x9 Q }
& [. r; l' Q& E: f& U/ ^
- ^% M- ]4 l- C4 ?} |
|