|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 s: h. }( j5 A& m! P( v" _6 b* `8 {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& X6 Q( K% C5 y2 g5 T6 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 A; k4 u, t7 @# e. |0 L' ]swarm.SignatureNotFoundException9 b9 ]) l- B$ l. R+ U8 \
at swarm.Selector.<init>(Selector.java:76), O' E) q6 ^. X) |" U1 e5 M; X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 i4 x8 Y2 K J. h at ActionGroupDemo.main(ActionGroupDemo.java:67)$ T# R+ k( i6 A; f1 X
N- G3 q, c) ~9 D2 m
; e9 |. m5 O: T/ v# o4 o) q$ bimport swarm.objectbase.SwarmImpl;
/ ?' t0 U. l$ Iimport swarm.objectbase.Swarm;
* J! p: j( r5 j2 zimport swarm.activity.ScheduleImpl;
0 V/ Q7 _* F2 [- g% n8 @: S0 timport swarm.activity.Activity;
5 F0 n+ C5 B8 a+ y0 J% u! fimport swarm.activity.ActionGroupImpl;
, J+ J. H, A( d! a! dimport swarm.collections.ListImpl;+ R# g) N5 G, G0 n
import swarm.defobj.Zone; 8 L6 A M0 ?' @1 \9 v5 Z
import swarm.Globals;- S* l3 W$ F0 N4 f+ H2 L3 `. Y+ S
import swarm.Selector;
$ A# y7 I- }4 K4 l* \! }import swarm.activity.ActionGroup; % a1 Y5 @; q5 h& z% n, V, F6 o
class Agent {- M; j! p: A/ s g
char id;
; ]: l6 \5 f# t( `/ K7 ?6 U/ f, G; |+ F( x; g! _0 M3 h
Agent(char id) {8 r- P4 j5 K' u7 f5 c
this.id = id;0 U U8 `7 u. N6 r" o, \
}
g$ Z% x; \3 @+ B8 {
3 x7 T0 V; k; w% V public void agentStep() {' y6 ], ^- i3 q! N3 ~6 c
System.out.println(id + ":" + Globals.env.getCurrentTime());
. W `8 K. u( ~0 l9 ~9 S }+ ?6 M5 K: t3 i
}
! y) _% F* k) z5 I
# s3 g' K% h. S3 K7 `- r0 _public class ActionGroupDemo extends SwarmImpl {* _# x6 k( r, y
ScheduleImpl schedule;
% H* R5 R$ c9 f! ?( o ActionGroupImpl actionGroup;# n# `* K; a* G% |' a0 O2 F
ListImpl list;3 E- \, S; y. o1 B
char Id = 'a';, \9 _) u$ \1 g
4 n6 W% R, d. a, X8 A$ J
ActionGroupDemo(Zone aZone) { c8 E9 `+ w/ L0 J* k
super(aZone);
) p1 k% L8 W2 d" g list = new ListImpl(aZone);2 u+ }1 p$ J( ^+ w/ e( B$ Y5 g8 m
swarmSetp();' }8 D4 F) x1 g7 w; b+ K6 S5 z
actionGroup = new ActionGroupImpl(aZone);; |8 s7 D) A( P8 |2 g
schedule = new ScheduleImpl(aZone);
0 k# n' J6 T; z; w! W R/ e" b9 d try {$ m' d7 M+ {5 I) o, A8 g6 q3 f
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 L9 ^: S2 G4 l. q' f Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" [1 p$ y( ?" L; u# i! y+ A! h/ | Z0 g& o6 d( y9 o2 Q! Z3 v x+ f
actionGroup.createActionForEach$message(list, agentSel);
! V- V1 e$ R1 c$ y actionGroup.createActionTo$message(this, swarmSel);
7 ]1 w* ]( S3 g& g4 I& f b( k schedule.at$createAction(0, actionGroup);
4 k+ o( |7 p& \/ p4 d5 F: n$ Q schedule.at$createAction(1, actionGroup);
1 Y. i6 s3 F- _% _5 C! h schedule.at$createAction(2, actionGroup);+ Z C$ j& e2 u$ R; ~$ i) Q0 d" B
3 Y1 |! V. Q6 M8 r } catch (Exception e) {
4 ^9 r" x1 c) r+ j, w2 y8 q e.printStackTrace(System.err);0 K# q& J0 a: q2 h% s! S1 j0 h1 B
//System.out.println(e);
7 t+ `& N# k/ `. Q1 ?+ Z* O" R System.exit(1);
2 ]# d, J4 g1 P: s" K6 |* c% | }
" |* ^0 ^7 H! a+ g! a
6 j$ ~+ z { W2 n6 H2 O
9 V* S: W* ]. [# o2 x3 i }7 D- ?) V1 n2 C8 D- k
5 u8 E8 g/ R" b" j2 Z* f private void swarmSetp() {3 Z( q6 B. O+ @) D) B! C
list.addLast(new Agent(Id));) T4 f4 C6 S* V3 S7 N+ w) n
Id++;
) M8 W: @# Z# v0 c }
) y1 ~0 T3 w- C
2 e& p4 N7 X+ g! ?3 c public Activity activateIn(Swarm context) {7 v4 J/ T. g3 C6 [8 ^ U
super.activateIn(context);
( M( R( B9 g. q% [+ ^6 c schedule.activateIn(this);, ~; H; Z4 `2 {2 p4 J' D" ^
return getActivity();+ b8 h9 E6 Y- P
}
4 ~5 H! j, d9 M" d
* }% [3 j7 Y. x5 g& t n9 w. x public static void main(String[] args) {: z, k+ t0 }5 u" D T8 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 J( n5 w( ]/ H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& \/ T4 g& n* d' U9 R
swarms.buildObjects();4 @6 h5 x1 Z2 H+ {# l
swarms.buildActions();1 U" M" ~% s8 D6 K% J
swarms.activateIn(null).run();
& J- O# p& N' P1 V( ^8 _6 F, ~ }8 \/ G2 |3 t e* u. h; p1 D' {
* t+ V$ C3 W& b, k$ l} |
|