|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 h* p; j- i5 m9 w# r7 i+ _7 P, j0 L2 L U7 a+ w; j/ i7 I1 p: j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 L8 T& H$ e& {2 l- K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 N/ h. C8 c; g$ K I* q A7 lswarm.SignatureNotFoundException
8 ?' p! _6 a+ g) q at swarm.Selector.<init>(Selector.java:76)0 K5 T. i, ?6 L2 {3 u6 d( W: L7 I) v( @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! r0 F" @: P/ B" E& z5 A7 q( ]
at ActionGroupDemo.main(ActionGroupDemo.java:67); J' p9 C y) F1 [- E9 t9 g
& N; d9 i: ?' u) J7 r
0 I: o4 t0 n- Q* _! U; z- Y; Timport swarm.objectbase.SwarmImpl;' i2 Y: {$ q; Y) z
import swarm.objectbase.Swarm;% K5 }/ R7 `! u2 ~" i
import swarm.activity.ScheduleImpl;$ m) h8 v! ~( ?/ K. P% A: B! o
import swarm.activity.Activity;, g) ?0 y& E( f
import swarm.activity.ActionGroupImpl;
1 j1 i. Q8 I) s6 w2 x* `. [import swarm.collections.ListImpl;( _% c4 l5 F* V* Z
import swarm.defobj.Zone; 2 U1 y$ s+ F6 v' z
import swarm.Globals;/ Q* q r) G U, ~$ W
import swarm.Selector;
! P$ N$ N6 Y& iimport swarm.activity.ActionGroup; 6 m, h1 @0 ?, a" T
class Agent {
: ?7 s0 \ a* d- L char id;
* i2 C6 {# a7 r, U8 O
0 y* B0 D. \) m/ h6 W2 G5 n Agent(char id) {
0 P* ]# A2 p* x/ q this.id = id; ~/ o1 K9 ^8 X \ I% e& Z
}
9 F- E8 F& o9 G o1 i* g2 [# K, }. l. I3 M
public void agentStep() {* a+ G# B2 d) }# |/ u
System.out.println(id + ":" + Globals.env.getCurrentTime());
& F# y' a: }! _6 M }
( V6 c) ^+ n1 {$ L6 }8 q' u/ ]}* _" O7 h( r& Z& ~, v
! }& g* x8 g: P, kpublic class ActionGroupDemo extends SwarmImpl {
3 A7 w6 V! p' V U+ l$ [' n x3 o ScheduleImpl schedule;
0 _1 b3 Y; n1 u- ]& M9 H ActionGroupImpl actionGroup;) z. h1 h: p4 p' H; a0 L
ListImpl list;! E' N5 J9 L& D' n
char Id = 'a';( c; i# |8 h7 [# N( W
' W+ d2 Q ]) e* D! Q. @7 J$ {4 Y6 B
ActionGroupDemo(Zone aZone) {
! r5 E/ \* j# |% L# T: ]3 D super(aZone);! ?/ T9 ~8 \* I {, ]
list = new ListImpl(aZone);0 c+ S% i2 C- ~! d) {' w
swarmSetp();
! W! T+ Q% k# S( I' X+ V& V actionGroup = new ActionGroupImpl(aZone);
" f1 J/ |3 V/ H h schedule = new ScheduleImpl(aZone);- P& P$ C& K. y3 u# t2 t# Y
try {
4 N5 r1 c3 m4 F7 g5 @1 }! c, s Selector agentSel = new Selector(Agent.class, "agentStep", false);% a. A" q6 }% T2 D. ~, X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- S$ N/ k$ B, p
* C$ E$ O- P- t% ]& X& @ actionGroup.createActionForEach$message(list, agentSel);7 D" ?7 c+ E5 H. b/ a
actionGroup.createActionTo$message(this, swarmSel);" d7 Y- J5 j+ i$ x' I% B
schedule.at$createAction(0, actionGroup);
$ ]# |: l$ p; u' D2 Z schedule.at$createAction(1, actionGroup);9 \; S" f; M( h% w5 p4 x' C2 c
schedule.at$createAction(2, actionGroup);
4 ]# \- W5 }& |2 U- Q
! v8 Y% }9 c T3 R; x } catch (Exception e) {
4 F% R: t0 I; k% Y e.printStackTrace(System.err);/ j: _ _0 J4 A- W! p
//System.out.println(e);
7 g1 j A; ?( i. b( Q# _ g0 k% Z7 i System.exit(1);) ~. A+ _' ^/ |4 N3 Z; B
}
1 V. z+ j' M [/ S8 v/ k) b8 J C$ V l( \8 i6 Q
% k5 ]& C) T' f1 L+ | }
& t9 R ~1 [7 D, g2 _
% s3 H6 E+ o- t! D( z7 n2 Q& x& F private void swarmSetp() {
' i" ]+ x/ e r/ r" y+ I list.addLast(new Agent(Id));0 u8 B$ `2 K5 B8 ^: |9 u
Id++;, s$ `8 \; o! q& b. L/ C; k; Z
}
4 l7 R. v. y2 z: v3 J" x( }+ ?( O. m" E& L$ }& S* t3 s ?
public Activity activateIn(Swarm context) {
& s: r& h) ]8 K/ D5 O super.activateIn(context);
9 o3 T+ r0 ]: p schedule.activateIn(this);
( J- e0 w" ]) W% ~: h return getActivity();' R9 S# \3 v; a8 a9 y
}; i( [& |" S& K. W% y* a5 x
+ O8 g1 K& V! `8 k
public static void main(String[] args) {
8 f' N+ \% A ~( f, q4 t ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ i& \" M% e! F. ?, C- q3 f( k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 G" X2 q, t5 [* @- g$ @; G' k6 m
swarms.buildObjects();
0 f0 m: Z! l+ \) ]# |! k/ h1 a swarms.buildActions();. i% h4 x& y3 ?& ]
swarms.activateIn(null).run();
% J" D' b7 q5 ?8 {- u# [$ r }. u7 C2 d7 c$ L) I
; ]7 [% N, {; t! ?# @0 @
} |
|