|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 q I( X; ~: G
: V2 ?- p0 r( ^; A. i$ y' r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 D8 S, O7 X0 E6 ]* n! c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ w9 v6 ~5 |9 Q5 i6 Y7 N
swarm.SignatureNotFoundException' b! q! R' H! D( z3 G4 }0 N5 f
at swarm.Selector.<init>(Selector.java:76)9 e. ~, O# `4 }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# W* W+ x G, q" p- \3 \ at ActionGroupDemo.main(ActionGroupDemo.java:67)6 o! n5 L& f) }
1 M. t4 d6 S! E9 S. R
' N& Z* d0 x: _9 a7 Q5 E
import swarm.objectbase.SwarmImpl;" w0 ~6 X; z2 s; b- O
import swarm.objectbase.Swarm;
6 f! ]2 e8 x/ _! p1 Wimport swarm.activity.ScheduleImpl;5 H; Z. D( Q: G0 w. V8 L
import swarm.activity.Activity;6 x3 y6 r& v$ z U" ^# X
import swarm.activity.ActionGroupImpl;
6 B3 R6 e# j' M7 c3 |1 h" {import swarm.collections.ListImpl;& D7 c( O# e* b# K6 y) g0 T
import swarm.defobj.Zone; {) p8 G2 d: n) }: N
import swarm.Globals;& M- u! B$ X! l2 S& B( d6 N2 r
import swarm.Selector;3 _, d4 O' J" x3 t& B
import swarm.activity.ActionGroup;
2 [! C7 A+ q' bclass Agent {
: |( T- e* J+ C8 ?' l+ t/ d t G char id;$ v1 l; r& N5 k- p A
1 c0 z! Z: t* Z" A) M& J; c9 T N
Agent(char id) {
$ K8 }( C# \4 O6 N6 k9 \" J1 J this.id = id;
# c' D1 u: u9 W$ |# D }
: v+ h4 p, m) ^, \
. {% M& Y: e' J- j6 r public void agentStep() {
6 v2 f6 \. { ~7 G# ^, V8 u- } System.out.println(id + ":" + Globals.env.getCurrentTime());
3 X0 c! b k4 y4 K }
' k/ l* g! u+ ?1 Y, Z}
; F+ K; R& \0 e5 ?
8 `# p6 c+ r, n: f+ ^+ J& t& cpublic class ActionGroupDemo extends SwarmImpl {
7 _( P/ D6 V1 B+ t3 \! y ScheduleImpl schedule;7 h: M+ ^0 L$ q/ K8 X& O2 m& X9 J! K2 Q
ActionGroupImpl actionGroup;; X" p g6 `, X9 e9 q5 Z
ListImpl list;: \+ J6 S6 F5 @. l& Q% c: g
char Id = 'a';4 j& P* K+ Y3 C" Q
5 H+ w% {/ V/ Z1 v# ?2 R0 x
ActionGroupDemo(Zone aZone) {9 u/ X) \5 }& T) H
super(aZone);
, i& R1 a& ~9 M' a$ U: c list = new ListImpl(aZone);
& l( E. y& H V5 u6 u: [ swarmSetp();
% a1 z5 Q! c9 y1 k% s: G5 H( } actionGroup = new ActionGroupImpl(aZone);
0 n0 f8 O, S# N) `+ e0 } schedule = new ScheduleImpl(aZone);8 x/ ]8 a( S$ e
try {% I4 q9 X2 O$ v- r1 x: E4 f
Selector agentSel = new Selector(Agent.class, "agentStep", false);& c0 e& f: C8 k* ^ ]& P) Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' R' e* X" F7 E) t% |2 i1 D
. I9 m. E! y, F1 X+ l
actionGroup.createActionForEach$message(list, agentSel);; }4 P" `1 H w, N, J+ S) I
actionGroup.createActionTo$message(this, swarmSel);# h: ~7 `# r' ^* G! f9 l
schedule.at$createAction(0, actionGroup);
3 Y4 v. M! ], n3 h/ G3 T& c schedule.at$createAction(1, actionGroup);% ?2 F7 i5 P8 J
schedule.at$createAction(2, actionGroup);
! ?* {5 k) w& Q2 Y* D
7 b) }, v) C" J- g- q } catch (Exception e) {& G/ ]4 g7 P9 P1 c1 o6 h( I: D
e.printStackTrace(System.err);& F* E$ z! H& j/ I1 \, {" v+ Z7 _7 E
//System.out.println(e);$ Z* A0 l9 O5 M* k6 \
System.exit(1);, C, ^: V2 u+ @+ G$ A
}( o! z) [& m! U0 ]2 L+ p" T- G- Z" g
/ T+ N: X2 i8 G3 t
4 l* Z& h3 F E }3 l7 C! D8 W) t
: ]7 A' b: F5 }* Y8 v. D private void swarmSetp() {
) ], T7 y9 Y6 ~, }4 o list.addLast(new Agent(Id));
+ k9 o i* o+ D$ x$ T Id++;% s+ P* `: n* i8 k* y8 t% G( G
}
5 t" f3 r6 `# _6 t5 U* W3 x
# A* L1 S* @+ ~: i public Activity activateIn(Swarm context) { ~5 r [; ^2 h6 j. _0 f
super.activateIn(context);
a! o, Q& P0 O% l" Q$ I' c8 ` schedule.activateIn(this);
' J: H: S0 X5 ?* w$ T" V1 N- c return getActivity();
8 p* y0 | K0 w }0 B* r; Q. T. `7 d5 \) t& T
) f9 F# o7 r; g8 J2 \ [: Q
public static void main(String[] args) {, Z* |" p5 k. o" H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. i3 E% y7 }) f! ] Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ F; S' @" j1 N2 q, t swarms.buildObjects();
+ ~) ~" c6 f4 s4 L swarms.buildActions();
% y' y0 D+ F6 P+ D9 ~ swarms.activateIn(null).run();$ o0 E3 @- m& l: ^6 ?$ i
}% B! Y; z7 g( V( N
1 M. [; M+ q: C, E8 p8 q- S} |
|