|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 B6 }- e; S9 l0 s) m# S: c' G( w) t
/ Y9 A! S# ~6 U K+ x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! l% [, v5 v! ]8 j# {0 O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 h- w W: T9 w2 ?7 e2 Lswarm.SignatureNotFoundException
5 e" g* y/ x! ]7 L5 x3 {; V at swarm.Selector.<init>(Selector.java:76)' ]9 K6 g8 R; E7 G+ g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 d" N- p+ g: u at ActionGroupDemo.main(ActionGroupDemo.java:67)' n- l' J. i% b! \
! r4 V1 P2 A* u0 o0 D
* M! C- g5 b3 [0 H
import swarm.objectbase.SwarmImpl;
5 j9 f$ Q# W1 `import swarm.objectbase.Swarm;
$ y7 \3 s% ~2 W+ d1 u3 nimport swarm.activity.ScheduleImpl;, c* [, Z/ n' M$ W5 z' T* {
import swarm.activity.Activity;2 U+ }* O v& l9 x- y+ {
import swarm.activity.ActionGroupImpl;. } y2 q5 q6 q+ L# X' `
import swarm.collections.ListImpl;
" c' Y/ e# \& |, }# b: B) F7 r9 v* iimport swarm.defobj.Zone; 8 W* n' q n" ~+ s
import swarm.Globals;
4 s7 X2 w6 ~5 O Simport swarm.Selector;* Z) `' T) I' x4 D4 F) ]
import swarm.activity.ActionGroup; 0 m) L* P! w7 p7 l1 b8 l- r& q1 I
class Agent {& e* I* J |3 @8 V$ I# s2 D: y! z
char id;8 [; P* K5 {; a" x* M
( i( y% X+ n( E& h& W Agent(char id) {
$ ~2 M! i; D1 X/ M1 f' ? this.id = id;) x+ [1 G" Q- r, q$ d2 H
}: _: r l; \! E j4 ]- d( A
' Y1 ^( Y, r0 O* X public void agentStep() { J8 z0 w# e" Q* h
System.out.println(id + ":" + Globals.env.getCurrentTime());. A8 J6 v0 d0 S% Z2 h8 Q) h# W
}
6 H6 }; G. Q' _! N1 ]- \! w$ P) E4 y}
+ B p) [$ Q7 n
! Z7 F: m9 b* O" s" ppublic class ActionGroupDemo extends SwarmImpl {' |& D1 m1 V' Q! w' Q
ScheduleImpl schedule;
2 t; L- Q( \# D; q: T ActionGroupImpl actionGroup;
. I* w5 _6 j" [; E ListImpl list;+ O, h' _& c( c- A: p) G' C4 a5 T
char Id = 'a';
, W8 B+ L1 r, e! d% w- T7 \/ x
0 w) r( X L1 Y9 f1 k6 v; O7 a ActionGroupDemo(Zone aZone) {" x) D+ o4 |6 g e, w
super(aZone);/ Y K' `1 m! [0 D* z8 k+ |
list = new ListImpl(aZone);
! |7 |7 F9 {/ `4 W" w swarmSetp();
/ F( e. I7 q( a5 I! c0 L! q1 C actionGroup = new ActionGroupImpl(aZone);
% D0 L, Y8 U% I3 Y/ D. c+ M$ M" C schedule = new ScheduleImpl(aZone);" W @ r+ k1 M6 {& P# o7 Z
try {, q/ c( J) B2 A9 z: e( J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
a; m0 a e+ H7 v; v Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 ^6 t5 `' \$ W5 M1 R 4 M$ t- L, T) ?( b
actionGroup.createActionForEach$message(list, agentSel);
) f. H2 {% a# F actionGroup.createActionTo$message(this, swarmSel);
3 c( K# z% x* V& ~ schedule.at$createAction(0, actionGroup);
' V/ _" Z; v2 b+ c schedule.at$createAction(1, actionGroup);
I+ r; g7 ~5 w: h# V* B k schedule.at$createAction(2, actionGroup);. M& B7 u, k3 x1 X8 f/ e; S
) o' n# ]/ W+ w3 N
} catch (Exception e) {
7 U+ T# r' T4 d. _8 [ e.printStackTrace(System.err);
1 }5 i) d. X) r1 h0 E* t/ K //System.out.println(e);
~: z6 n* U3 W) N: H* [/ `* C System.exit(1);& r, m) W9 p% @. x$ \
}
4 b4 _; \& H1 `3 Z" |% e1 V5 }9 X6 ]( x+ r: \
% \( I. P, {7 D! d& `/ L }
$ b. ~% v1 g% U5 q% v, I
6 T8 P0 P2 M z. d! _1 s private void swarmSetp() {& R9 m) T9 Y* q+ d3 n
list.addLast(new Agent(Id));
# X4 x# C& R: i- B5 i Id++;! d6 _$ u! O: v$ g d
}7 a0 \. O# g7 d! d$ X+ B# E
. A! I1 [$ k. T& H' Z
public Activity activateIn(Swarm context) {
* C) y" o# X/ {) [7 f. @ super.activateIn(context);
" Z. k0 z8 u, U: U) l$ H3 I% F! d schedule.activateIn(this);0 M& f' y% H- L; c ]
return getActivity();0 I6 \% ^9 w* m) c; b
}- T8 C- s- R# w! ~6 }
! Y) S7 V+ a; B8 Y: |" ]# p
public static void main(String[] args) {& _4 _! ^# M- o4 G( @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 E* i7 N4 c) _# ~
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 Q9 \' `6 n, K- I* B" [, K* U swarms.buildObjects();2 T# j9 o L% a* D6 f6 i$ _, t7 U; i
swarms.buildActions();4 n2 k5 j7 w$ T+ a' H" K+ |& q. U
swarms.activateIn(null).run();
+ q2 w' r, L7 r! U( Y5 I }
8 i4 X9 O* Z% H5 x) J1 T- n7 e/ l
, f8 C6 V9 m7 {$ t6 P7 }' {} |
|