|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# e7 z3 G, c( m# N9 _5 u! q% Y! X+ C5 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. B5 K: _! ^$ X) x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 k) O* K2 V. t, w& F) J& L* Fswarm.SignatureNotFoundException
* \% N) @8 \0 n7 J9 j at swarm.Selector.<init>(Selector.java:76), n, n6 S3 [& U$ i# Y* b- l% x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* \+ C, W7 W4 p9 F' T. O8 c" S at ActionGroupDemo.main(ActionGroupDemo.java:67)$ z/ ^- j4 v" m* c) C3 }( k
( n0 f8 {" C- P- l4 E8 c
# ^' d2 }6 `7 q5 @. l6 m, j) U8 zimport swarm.objectbase.SwarmImpl;/ x+ Q; i* I0 h' h: `$ G, B
import swarm.objectbase.Swarm;
6 B7 x+ f$ L1 ]/ B5 E! q: dimport swarm.activity.ScheduleImpl;
8 B0 N$ v5 m$ Y( z& nimport swarm.activity.Activity;
0 E5 O; x9 y9 }6 k$ o# \4 J( `import swarm.activity.ActionGroupImpl;8 Q4 j' d5 Q |! T; M, u
import swarm.collections.ListImpl;0 T$ x+ X0 h1 k5 p
import swarm.defobj.Zone;
- L6 J5 E* j( a2 Uimport swarm.Globals;; F3 G s! i' i5 m
import swarm.Selector;; x$ N3 u2 N# g4 s5 p
import swarm.activity.ActionGroup; 0 q" {4 h# Q! h8 ^1 x, M4 F
class Agent {
# T% M8 L8 b; }" [& _) ~ char id;# J; j1 F0 @8 h; l" l8 l
7 b( i: J9 g. f1 b- u) A$ |- C Agent(char id) {5 [9 p0 P- i% ], H
this.id = id;
$ q6 P0 V# V% Y# M/ U }9 f8 \) J4 \7 L( H+ t3 ^
$ {; e# |3 k3 ~! t
public void agentStep() {* Y8 ~- z h$ }5 R
System.out.println(id + ":" + Globals.env.getCurrentTime());" h- P. d' A9 `7 `/ V
}0 Q8 |7 g% t3 q; b0 `0 ]
}
; o. m' I* _$ Z- r9 ] B" v0 f5 X, N n" q
public class ActionGroupDemo extends SwarmImpl {
, ]- ^4 F, ~" E2 k! n5 Z; i7 s ScheduleImpl schedule;
5 Y. ]2 |1 g6 d1 A4 j" [! g ActionGroupImpl actionGroup;7 Z+ ]& V$ V4 W4 w/ h7 K
ListImpl list;
$ i9 I- V1 ^1 N% N* Q char Id = 'a';
4 t& P, v: \6 H" {3 r v( I
3 A7 m: K# W" l5 s# ^ ActionGroupDemo(Zone aZone) {
6 i- b- ~+ @6 c. [8 v super(aZone);0 \7 [8 [. N4 s
list = new ListImpl(aZone);
, T" q3 h8 I ]2 ?7 Q swarmSetp();
2 F0 J$ Y* [- P( Q, V actionGroup = new ActionGroupImpl(aZone);
: }% a9 k* D6 G- B2 y3 u/ G schedule = new ScheduleImpl(aZone);
6 s% e0 r9 D) F6 C) } x" f try {! t) g) k: D E& F
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 J5 Q/ B3 a7 V5 X. Z. n5 @% R Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% i+ L- L5 A% |( a( c
/ K3 x; a/ ~* B: w' ]5 |$ e; N actionGroup.createActionForEach$message(list, agentSel);
: N0 A9 H8 Q9 c' z; y' {4 S actionGroup.createActionTo$message(this, swarmSel);4 }5 L0 s- b4 u
schedule.at$createAction(0, actionGroup);
% H! ^! Q: i7 B" }, B' Y$ { schedule.at$createAction(1, actionGroup);
6 A/ O' b& {5 c; \+ R: E schedule.at$createAction(2, actionGroup);2 r; o4 Z$ W7 @5 @0 U
) X) `- J4 z: N7 \# x/ x
} catch (Exception e) {9 k: T+ i. z* b$ l( y
e.printStackTrace(System.err);
; n6 {( [4 p1 c8 M5 [" M" e //System.out.println(e);5 ]6 z! P, G( X3 d- L9 G4 d8 x8 V
System.exit(1);9 ^$ Y2 e* C: e
}
5 r. X& W% A& ^5 n
) o0 [2 |, j5 Q" D/ e1 n) W% q# O) w7 Q; P& S. }
}
6 ]# m) ]7 `# e; K( P8 V9 n( x4 v6 n) }; I. C
private void swarmSetp() {. S2 Y- B m# l8 i: I
list.addLast(new Agent(Id));
: f: x7 K( V- M. ]: s8 B Id++;
. {/ U: D* j! c1 H0 ? Y }
+ y% O H) b" Z6 X k5 E H! D/ C# r+ b
public Activity activateIn(Swarm context) {$ V3 |4 w) w7 w
super.activateIn(context);) C% T( @- d" |2 L
schedule.activateIn(this);& Y; H' q8 l# h; j M
return getActivity();
9 x5 \0 K. S$ x1 _2 F* r }
/ I @" Z% z. m
8 ]4 o/ Y! K5 B5 N7 y; j8 J* K# j' s public static void main(String[] args) {- _- C0 Y( d, M/ t6 s6 O$ D" |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ I+ K8 {% u% ?8 B6 J. `2 ]' | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- b* i+ D7 Y. S) [0 o* @5 s
swarms.buildObjects();( K4 I- {( }8 f8 L/ A
swarms.buildActions();
( \9 D4 K' I# k swarms.activateIn(null).run();
9 e9 Z1 S* X4 c6 a }9 H' ~( X" N. A. f. s) S
0 {# ?# ?1 `$ z3 N+ x} |
|