|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! Q" F. a) J/ X7 \, O" i
0 {/ U5 k4 g0 k2 Z8 g! v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; A M @- w( q6 L5 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* X1 X" h' @ Z) Xswarm.SignatureNotFoundException
7 C) C& x1 A- E! E' [+ z at swarm.Selector.<init>(Selector.java:76)
. K5 u& r5 a) Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 `* F2 B$ r. W at ActionGroupDemo.main(ActionGroupDemo.java:67), L3 y; z% A- i# ^" P: t1 r
; B5 `1 _2 d) i% P) p' G
f9 t* k4 M2 j' B
import swarm.objectbase.SwarmImpl;
8 ~: b/ g% E0 b9 C4 P( T4 [: yimport swarm.objectbase.Swarm;
3 J& I$ @/ l* N* m; x* `9 `import swarm.activity.ScheduleImpl;& ~) Y5 x4 `3 g) y( l( O5 J1 q& ?
import swarm.activity.Activity;
1 `! _0 e0 o% A9 H- D$ }) ^import swarm.activity.ActionGroupImpl;
- @6 M3 i. E" T; e- @% `# Q9 wimport swarm.collections.ListImpl;2 G* h2 }; B, _) q8 j
import swarm.defobj.Zone;
, ?) r7 D1 z6 d* X0 i- o2 R; _import swarm.Globals;
3 J* Y% B; M4 h/ Vimport swarm.Selector;6 u0 {: d) S! u. ]# t5 G, t
import swarm.activity.ActionGroup; + W7 K4 ]5 N9 b5 ]: c, E1 _4 {; ^! M
class Agent {1 }6 `# V G" L5 z' _
char id;8 Z& E- w. n0 S; }
$ R# k2 M' a3 S% u0 [
Agent(char id) {- N6 E# c( k# y P% s8 J! K
this.id = id;
1 J9 D# Z/ {( S& u N1 J0 Y' ^ }
$ \$ }2 A3 g5 d2 }4 h7 `, m" D {& T( y4 x
public void agentStep() {
# U5 f' B# W0 u$ E8 x' y- ?0 a System.out.println(id + ":" + Globals.env.getCurrentTime());0 p6 j$ `! e9 ]+ g8 F
}8 B+ M X7 M) u# ^/ ?
}
E7 F! c- a6 T; ^! O" u0 \9 o, y0 }2 [! ~+ \2 X
public class ActionGroupDemo extends SwarmImpl {; z" D4 @& X6 Y! z5 d9 p
ScheduleImpl schedule;1 v; l- t4 V0 m, k* o! ?& H# Q
ActionGroupImpl actionGroup;
% y7 }% S1 k- f' { ListImpl list;0 J5 I* z2 k, y: `1 k$ }
char Id = 'a';
. W, m6 O4 M0 M9 j0 L
. V: [0 |- J( ?9 _5 X ActionGroupDemo(Zone aZone) {8 Y0 l5 ~# m' d t/ g& }' v: s
super(aZone);" T! w7 g6 m' w& ]/ l) X9 u" ~
list = new ListImpl(aZone);
5 ]. U( C! {/ t+ I/ B swarmSetp();
/ |& s* W, y& |6 f( | t$ w; m actionGroup = new ActionGroupImpl(aZone);6 U; h; B9 h. X
schedule = new ScheduleImpl(aZone);
% _* D' [+ G. |, O try {
- A4 i3 V/ H) l5 c' d9 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 w( ^0 C! K+ z0 m: f3 C Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 ?* I4 p: Q# ?0 ~- g
. d9 R) M. e C) A& J3 F( i; P actionGroup.createActionForEach$message(list, agentSel);
9 I, n% D$ M' O/ |; y4 E; A actionGroup.createActionTo$message(this, swarmSel);
- v" V ^$ j9 I( a schedule.at$createAction(0, actionGroup);( c: D2 Q& G0 F3 W4 |; g( k1 y) _& a q
schedule.at$createAction(1, actionGroup);& j) T: m6 F- ^% P- L' X
schedule.at$createAction(2, actionGroup);) D* @; R( c+ p
8 ^0 o9 t7 ]. U$ x } catch (Exception e) {
1 m/ X1 `2 `! T; ?0 B6 S* \ e.printStackTrace(System.err);; X9 O. v- U S2 O, S
//System.out.println(e);
- C3 F$ ]5 v6 q" A9 x8 w' D System.exit(1);4 u, o9 B, f5 A; h. S
}# M: u) `; P6 d' I
; `" ?6 P' ^7 t/ @" T
0 C: m+ E5 I. s Q7 o' T- [/ z7 i# l }9 U. Q( ?7 y" p& [* [0 b; o0 t3 ?
+ j1 W. p6 }3 o( k: }8 Q private void swarmSetp() {
6 Z" H, m2 w8 G8 T# s) Z; g, p5 G list.addLast(new Agent(Id));
& d1 b- f5 l6 u4 r0 @ Id++;
4 W0 p1 Q4 ]/ l# {& V- W }# Q9 J9 ?; p" I' v: B4 p& N
$ n/ P# w$ x/ M$ V) E, T/ ]# y3 _
public Activity activateIn(Swarm context) {$ w( _% {' ~" s. N8 H
super.activateIn(context);
/ n: ]( v" x3 P1 _ schedule.activateIn(this);
. b: i1 H3 _% `4 ]% g5 B/ ] return getActivity();
' K) k. F+ ]9 }1 w0 g# S }3 K, e; T6 Y8 [, g R
2 q7 Q! ~! S" i% y' j1 ^
public static void main(String[] args) {
% k2 @, n) N) C' w6 }/ K3 ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- l, M5 [% O; H+ [6 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ }( G, w3 E) g( b
swarms.buildObjects();
% t# q: M: w1 I; X! o swarms.buildActions();
" F5 r, `" P @# @+ x# K5 ^ swarms.activateIn(null).run();
4 W& W, c2 l: x3 R+ ]" K( Z5 i( d }
& E: ?- h- T* N# T: M2 q# U/ _& h, [. k, {, `
} |
|