|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ b& ~( o4 [! J+ q; C1 F6 N/ d- x4 x" ~8 u c! t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. e& ^) l6 U7 N" {; c9 e; m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 X; A3 Q1 s' X) l7 X( H# ?
swarm.SignatureNotFoundException
$ m/ N: E& r1 R$ @6 ^+ A* H at swarm.Selector.<init>(Selector.java:76)# c7 k2 j; z* W7 k: l' b0 n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# d w5 N/ T% N; e- e- \+ ~6 x& T at ActionGroupDemo.main(ActionGroupDemo.java:67)7 o. ?2 J( ]$ r+ k$ O
8 L) \' P3 O$ d* z
6 C$ H; ]. e. eimport swarm.objectbase.SwarmImpl;8 Y8 ~% |$ ^, K9 W0 K
import swarm.objectbase.Swarm;: @) X+ B# W6 ]
import swarm.activity.ScheduleImpl;
% ]. o/ c% @. }5 timport swarm.activity.Activity;
8 l+ n1 [4 ?- e- `import swarm.activity.ActionGroupImpl;' O# ] @5 C# F e* m: s
import swarm.collections.ListImpl;4 D& w8 ]5 H% `# ~+ s. `* r8 \
import swarm.defobj.Zone;
2 _8 l6 M+ x2 T) vimport swarm.Globals;9 F3 b( ]6 t% ?; s" b' G7 ~# D
import swarm.Selector;
6 ?& [% s5 X. N' [2 i) ximport swarm.activity.ActionGroup; 1 j6 T- ]5 u$ M5 A4 }$ z7 L
class Agent {" I9 {0 @4 B7 T4 V" @; d' t
char id;/ d% J* y. k. Y
2 b. C4 f! V' i, C
Agent(char id) {, d( ?! k$ k# H) o8 O- H
this.id = id;
; K% k! g! A' _# |& h9 N4 I- w }
5 _; e7 V3 S" C$ r, m
, B$ z1 e2 S8 v; V public void agentStep() {
5 n6 E+ u) W9 [, @1 z' C' o4 f System.out.println(id + ":" + Globals.env.getCurrentTime());
% N/ C. L! p* ^ R# u5 z }5 N m7 }! I9 f, }4 H, X
}
1 O0 P1 C8 W" j$ H
( G- N0 p. O4 I* \- Y+ U7 C3 zpublic class ActionGroupDemo extends SwarmImpl {' a5 @7 ]8 q9 U* q% K7 k; y1 g5 f
ScheduleImpl schedule;
w' y& Z6 u4 x; e( u ActionGroupImpl actionGroup;
0 N0 k* }/ \# V ListImpl list;3 x5 E3 v$ t |9 y( Q2 C
char Id = 'a';
$ l; j0 |1 \! s& m4 G
! t+ Q5 g. H! K9 s( Q ActionGroupDemo(Zone aZone) {
; T* r* W1 ]9 ^7 m0 Z( V super(aZone);3 w1 Q1 I5 S: ?+ Y
list = new ListImpl(aZone);9 N5 D* G: Q8 A/ i5 p C6 L; V
swarmSetp();
9 y' y$ [, a3 [+ p actionGroup = new ActionGroupImpl(aZone);
7 u+ R' r! I# u, i) ]+ _ schedule = new ScheduleImpl(aZone);0 m, s" B: J) r+ T, z1 |/ X
try {7 e+ y( m# f; p S% A: Z w0 D
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ d8 x5 @9 d1 r. W6 Z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ b+ J1 Z: z* @! _9 N% x
7 ^7 {: {4 f' w2 P0 s actionGroup.createActionForEach$message(list, agentSel);
6 D2 K$ C8 n L9 F8 P& N, C( L: g' h actionGroup.createActionTo$message(this, swarmSel);
' ?- o7 M0 ~( T( y" e schedule.at$createAction(0, actionGroup);
) I! I/ H) P3 B9 n7 B! Q/ h. h2 z schedule.at$createAction(1, actionGroup);6 L5 J0 f- P b; {
schedule.at$createAction(2, actionGroup);" I S8 }' \8 B: u7 x' ^: w0 v5 H
* x% Q1 J1 S: n; _: S7 k1 C
} catch (Exception e) {
! N! X2 `- B' O! {5 J# N e.printStackTrace(System.err);
/ s& I0 N) k$ h: G3 a* b5 a //System.out.println(e);; R) y' i, k0 e% ?+ g k
System.exit(1);
/ c6 T' t0 Q, e3 z }; [2 q3 P. ~: Y1 x w
( P2 O6 t# d L2 e- p4 `5 M* V) q( @$ ~# y' k# i$ L
}
. ?% H* d- V' S H' x
& R& o ? y7 F0 T; q; t: N private void swarmSetp() { Z! f# L% C( V: `3 X' Z& ^# L
list.addLast(new Agent(Id)); f; m+ I) U2 A: U
Id++;
# Z* s5 W L6 o }4 n! j' q; M* b" W- ~6 @
- p3 K3 Z$ Q, N5 P/ u public Activity activateIn(Swarm context) {3 H) W, R4 { }! @# p! n
super.activateIn(context);! ~- M4 J4 |& z7 H2 `
schedule.activateIn(this);
% y, ~; Y% V; x# {( H# a return getActivity();
) K6 ?$ Z- D+ b }
1 Z) b! i- a3 L
& O$ E0 J4 G# T, C, j# C public static void main(String[] args) {
+ F4 w# M1 ?0 n/ x9 j2 Y- ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% h) ]4 R# V% I( U( t Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 [9 G5 u" ]8 l# i( N swarms.buildObjects();
F* i# w) L: U5 f. k: e+ K J; Q swarms.buildActions();& Q. N+ R) h! b8 P" Z& x$ t) r
swarms.activateIn(null).run();
7 c( O' _5 @( l1 S( O7 j: _7 D }' N+ u6 a; C9 b$ Q: ]" F, v
' H3 y6 \) I1 s% v9 e7 q# g' ]4 ?} |
|