|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 E0 j, p) N2 g+ \2 v
/ }7 A g: w6 ?1 W6 }+ o- ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& F+ l; D$ ~! z5 @1 T; z6 j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' H3 Q+ V: d$ @& @8 o5 ]
swarm.SignatureNotFoundException
0 a8 @3 w7 Q) h l$ |. B/ v at swarm.Selector.<init>(Selector.java:76)
% T% I4 v0 H$ J* F' B Z. G at ActionGroupDemo.<init>(ActionGroupDemo.java:37). F8 n% \0 f. }/ s) ]
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ j) v) m; J8 m6 {7 y$ i, C* r% I: k
. p }# t% @) R/ H8 N/ timport swarm.objectbase.SwarmImpl;! `$ G) A8 |- ^8 ~( }
import swarm.objectbase.Swarm;8 E. y# Q* a$ u# u
import swarm.activity.ScheduleImpl;
0 Z) ~ E, }0 \- j# r( Eimport swarm.activity.Activity;
/ D% L# h; L rimport swarm.activity.ActionGroupImpl;
5 B0 h: ? o, R. Q3 Zimport swarm.collections.ListImpl;2 w; O$ j3 M. j5 }* J1 r6 O
import swarm.defobj.Zone; 3 {0 T3 g7 w% `: T. U5 I- ]
import swarm.Globals;
% i! K7 n* h \* timport swarm.Selector;
' D0 P D$ t3 Z7 }# N/ @import swarm.activity.ActionGroup;
5 m% D, p4 p5 K- Jclass Agent {
1 ?1 w# ^& M2 \2 x& Z char id;
2 @2 ?6 T2 a- s
% D9 N7 l+ Y# M3 v1 s$ f& a' V. k Agent(char id) {
. c$ h% I) P# Y5 A8 [! `+ G0 G this.id = id;
0 n2 B7 g6 K1 ` }
$ ?1 \ C1 l" D! ]; n/ s H" E/ E7 X) w- p5 b- O' {
public void agentStep() {# g4 H0 z. O7 _6 c! w/ E3 V
System.out.println(id + ":" + Globals.env.getCurrentTime());5 a/ J; l. Q; z
}
& r4 W$ |, v @; K+ c1 t2 g}
: K# r) D( Z/ R( k2 Z4 |8 y9 b9 e* o4 C* w$ h9 }2 w
public class ActionGroupDemo extends SwarmImpl {' I0 x" `4 a( L7 r' M2 w
ScheduleImpl schedule;' F- y7 c4 ^7 D$ I5 F
ActionGroupImpl actionGroup;
: w% W3 W2 _: [7 V' B ListImpl list;
2 j$ b2 }% N- E6 K$ } char Id = 'a';
$ g. y7 u3 v: S) S9 B7 _) n' G0 c7 l& \* m* x
ActionGroupDemo(Zone aZone) {9 s2 \0 G" z( |( A) m6 Q2 |
super(aZone);
% w2 h' K: q+ }. Z. ~/ M! o8 ]' B list = new ListImpl(aZone);
! O- N6 Y! R' O* D3 C2 R+ | swarmSetp();! L- \7 V! v( n" u$ y7 w
actionGroup = new ActionGroupImpl(aZone);) l: ] j h1 }* e# g
schedule = new ScheduleImpl(aZone);
5 o: M5 S; _8 x- b9 s4 N/ L- q try {
8 ]. R& u% t+ U; i7 n( c& N Selector agentSel = new Selector(Agent.class, "agentStep", false);
, \+ T5 [7 N* `' U6 c1 q; Q! z. e Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; t! v+ E" O0 s$ G0 H8 E, b
$ G) Q( f0 Z9 ~$ ~ actionGroup.createActionForEach$message(list, agentSel);
3 N0 _# x" ~8 s, W! M actionGroup.createActionTo$message(this, swarmSel);
8 L: h) Y: N3 S1 u schedule.at$createAction(0, actionGroup);; }3 l A8 y: C; {
schedule.at$createAction(1, actionGroup);
1 O8 }. A+ p; y, N schedule.at$createAction(2, actionGroup);
' d" M% E8 I/ L' n( [5 p# u* y
! t T' p, c# y6 ?8 m1 P w2 m3 c2 `( B6 R } catch (Exception e) {& v7 b6 H2 Q6 J' |% D
e.printStackTrace(System.err);
. W5 ]# p$ Z- S6 M% @ //System.out.println(e);
. |% P5 @5 |: |) P q System.exit(1);/ l) }$ T- h2 n- b6 {) z% r
}
4 z- f) S# y1 `: {+ g, S6 x( t- i J( p, l
6 p' o8 B( K; g& H/ L0 s0 m }" w5 M# S4 Z6 m! r4 _. D
( @7 i- D" v1 _& ~) I' }* W7 ] private void swarmSetp() {
" [) S: O7 R$ G5 | list.addLast(new Agent(Id));
6 P) X$ i+ \/ W! `; x& j6 n Id++;' C; K3 H0 i* |/ C
}& [0 ~4 s. ]* Y
$ E. {& y. T- D3 g2 R public Activity activateIn(Swarm context) {
! Y9 H! L. ^ h: S9 @" M% x super.activateIn(context);. _/ {( H! w1 \: K2 I4 S
schedule.activateIn(this);
9 f" c6 O5 I: M6 C- @ return getActivity();
) X6 A7 i5 P/ d; b }
* {- ^' p8 ]* Z3 z4 B' d; j8 `! ^/ k- q& X
public static void main(String[] args) {
: `) i3 Z( r- `, G0 T/ R Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 ~+ ~: b$ e! [" d% W+ @. d! A: V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* K1 f1 m2 t/ P( A6 Q4 I swarms.buildObjects();
/ V; a r% a- ~8 Y6 u, Q swarms.buildActions();
) u: `3 X, K3 u, S, P3 i swarms.activateIn(null).run();' }. a. e, y0 F; I( B
}
/ m: i; `( @6 X: P3 F4 i: h$ B/ J6 U" D8 `0 X2 L: s- ^
} |
|