|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- Z1 [) \; G0 N, U" B
4 T, }+ K$ x/ H9 L# z% j; q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. y l0 m9 Y- o# p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 _3 n$ M6 d* X* r) N$ J3 J
swarm.SignatureNotFoundException; `: r( B* n/ L% g- O
at swarm.Selector.<init>(Selector.java:76)9 X+ K+ L. t6 N$ e' M
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) \0 Y1 r2 y1 L" e
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. e" q0 Q- Y" ?' S- d# k! ]" r) s9 h) d5 f( X& c
4 W9 O1 M# o/ i5 x, }3 X: ?, simport swarm.objectbase.SwarmImpl;
4 \ O1 t$ y7 t9 R2 a; _; g2 aimport swarm.objectbase.Swarm;
* Y+ y' g5 i0 m, Timport swarm.activity.ScheduleImpl;0 N5 R! P9 z# t" u+ ?- i
import swarm.activity.Activity;
3 t# m; C! ^) \" Q8 i' Simport swarm.activity.ActionGroupImpl;
1 S1 Y/ i4 C. s, e' J# K: Eimport swarm.collections.ListImpl;
, X/ |* C& U9 _* O, T1 A( l+ F' vimport swarm.defobj.Zone; ; n% s/ N2 Z: h6 `3 h9 L: O% g
import swarm.Globals;
8 k4 ?( j" z1 L. o3 @8 }1 Z' wimport swarm.Selector;; I! i. G9 E: J/ I- H/ k
import swarm.activity.ActionGroup;
1 n; U: [. u: i2 bclass Agent {. r& \7 ?! [ g
char id;
% t& z% N- k- Z- ]
# {7 e& ~! T6 f* N8 E% l Agent(char id) {, a* l ?$ E" z+ ^' d9 d! M+ n+ K
this.id = id;
' T7 y- B$ e0 J- P: c }$ i4 u( Y5 x4 D
! J) h* h: [& P1 D. a
public void agentStep() {
' {2 b* I6 d/ K' D, m System.out.println(id + ":" + Globals.env.getCurrentTime());
. q8 B: q, ^2 T j! _: G) g }) _) T8 @7 F0 W
}
2 r6 m& B% w( `# v: j0 t1 }2 \) a# n" }, u6 i) n' o5 S& @- b
public class ActionGroupDemo extends SwarmImpl {# f! O3 H7 }( B" I8 V2 R0 W u' \
ScheduleImpl schedule;' B* h8 i1 U: \
ActionGroupImpl actionGroup;
! X. \) b* P: p3 y" _! C3 I, ^ ListImpl list;7 ~6 q9 @' O: |% N0 d
char Id = 'a';
e# x0 u- |* L- m5 r9 o$ V4 [5 q3 t6 L% V6 _
ActionGroupDemo(Zone aZone) {7 @9 j2 a% p; q! i1 B
super(aZone);. H/ A! p V# ^
list = new ListImpl(aZone);$ m' P) B( s" @
swarmSetp();" b! f4 W2 K1 H9 ?5 {$ x; a
actionGroup = new ActionGroupImpl(aZone);5 w6 {4 G+ k- y3 B& j
schedule = new ScheduleImpl(aZone);
7 s- J: n3 z: G try {4 _- M& [& _3 Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 X7 x0 Y: f. M: m' A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% K/ p4 @# D2 P% D, ]
! K7 c9 ]4 H. \
actionGroup.createActionForEach$message(list, agentSel);
* s I" w c4 {, I+ F: P R actionGroup.createActionTo$message(this, swarmSel);
* T. P' |! g8 T) J) h# s: P schedule.at$createAction(0, actionGroup);4 G5 x) I/ S e, b. H1 a2 m+ f3 s
schedule.at$createAction(1, actionGroup);/ G& q6 Q4 u) W' \) v% @
schedule.at$createAction(2, actionGroup);
4 z, O! B4 f& n$ v0 b% D. f( O) H* ]' w5 H+ ]" Y
} catch (Exception e) {" I) `* o% W8 i _
e.printStackTrace(System.err);
G, {9 v$ U1 ^1 m, O- O5 } //System.out.println(e);" K4 X* G: J( b- `. n: o& U8 U1 p9 r( n
System.exit(1);
9 \! J) {( N& L+ f" z! W, j) ] }* r4 [) i% g% P( h3 V% T# O
8 C. ]/ a1 t+ f5 u* M2 W
& ^# b: f8 n$ B$ B }
+ ]; N# b2 W* }; ~; E! j* O4 \: O& k8 ~) M7 Z- p, `
private void swarmSetp() {* m3 B4 ~% l5 `( T. K
list.addLast(new Agent(Id));
6 R3 N, |1 |" s Id++;
+ i8 M! _- W4 N# s1 }$ j }
! r; A& I: W! H. A8 s. L; ?
3 L3 f0 G0 @1 a8 ^+ u public Activity activateIn(Swarm context) {, k& p$ Y9 S- v C
super.activateIn(context);; O5 [5 d/ O g
schedule.activateIn(this);
+ a1 F' L$ C- t' c$ @( W5 [* d return getActivity();3 u% [% Q; w% J2 ^; V0 d
}
0 y6 N' v2 A! A3 j" [( b9 R# m4 o ^$ O- F
public static void main(String[] args) {
/ s) X- \7 h6 y K; M% @# ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 f/ N( I) h5 f! Z1 i t Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 \" e$ }5 r3 ]% K9 _
swarms.buildObjects();
% e, a6 F% ~# B/ S2 s* q8 s swarms.buildActions();
+ E0 u7 G! n8 t- N, b! M swarms.activateIn(null).run();
7 f& C5 c0 R7 _% ~: J3 b/ l, C9 q }
% G& _2 R+ y7 n7 g5 g7 Z) D3 p3 m9 M7 O! V* W
} |
|