|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! {5 ^% d S* j0 W) X
1 R/ U" `4 k8 v2 `# @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ p+ b1 F7 e( r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" H0 U! S1 J- _6 i( }swarm.SignatureNotFoundException
' X/ U* f' d+ \5 n: u at swarm.Selector.<init>(Selector.java:76)9 K/ x0 E) D, }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& k7 T% K, D& q- F: ?4 P6 J- c; j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 |1 j! q( H" l ^# u m( D
1 m& e5 L' \; i- l! w
% X6 Y! p0 {$ M3 |import swarm.objectbase.SwarmImpl;" C/ \- S2 F# J
import swarm.objectbase.Swarm;' W ~+ t: h5 m
import swarm.activity.ScheduleImpl;1 _* p+ z5 F/ r r0 _
import swarm.activity.Activity;
. |! G3 K- v7 q' R% i6 l% rimport swarm.activity.ActionGroupImpl;' T9 Q+ A) e! s; @# ~
import swarm.collections.ListImpl;; v' A. N/ d' ? x
import swarm.defobj.Zone;
" H( l. z! H) k% U" r# A* N& ^import swarm.Globals;
5 ]3 z7 E" w _; m0 J' Qimport swarm.Selector;
: K* l1 H( s! n: S# q6 \: o$ ximport swarm.activity.ActionGroup; 7 U v& Z/ w/ d( S+ z& M$ P& O6 ]
class Agent {( \$ O1 I+ Z+ A1 e. T
char id;; W. k0 T/ R4 A
9 S# Z: q; k3 s5 {" h Agent(char id) {
8 M) {1 P0 j0 e1 r; s( x, r9 U this.id = id;$ I$ V1 R3 T: l( P' E3 M
}
4 Y! D* G6 O; C! B* E: o8 o, [0 b$ [, e
public void agentStep() {; F2 O1 B9 d, f
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 B% r6 Q# ~9 ` Q; G, l }
1 X. P: s8 `% j# p8 k! i4 O J} B- g+ o& ^6 O6 m4 e( _
2 S: w4 f4 v5 M- w: t: cpublic class ActionGroupDemo extends SwarmImpl {/ s# [% R9 m; l5 c* |8 r
ScheduleImpl schedule;
% I# A2 w1 z4 R6 X# M; Y( R h- {* K ActionGroupImpl actionGroup;/ M1 a5 q$ e& w
ListImpl list;
+ N% P4 o6 J8 N" O9 l# [ o. s char Id = 'a';5 Z/ ^3 n7 s# ~
8 I5 b' L! `0 t& `: ^
ActionGroupDemo(Zone aZone) {$ C& z; p$ U& T1 G- D
super(aZone);+ Z: j0 L% a" M6 u- U5 d3 C/ P) s
list = new ListImpl(aZone);
1 |8 |# \) ~- |4 _6 D3 M swarmSetp();
, t1 R4 r5 ]0 _* S$ X/ N$ K actionGroup = new ActionGroupImpl(aZone);3 ]2 E& N/ X4 }- b3 [* e
schedule = new ScheduleImpl(aZone);
1 s- y. b- I1 F/ T8 P try {) v K ^5 J' R8 ]. O
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ i+ f* N- s# p& U2 A& R& r4 y9 N9 u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% H& y% n( E# J* ?* G& S
1 g- ]# `5 S: I3 J0 |; E; g actionGroup.createActionForEach$message(list, agentSel);
# j- X7 u2 f! C! s7 P( L; N actionGroup.createActionTo$message(this, swarmSel);
+ p" V8 \; j7 Z schedule.at$createAction(0, actionGroup);+ A a7 c- p+ t- V. A5 v5 E6 M
schedule.at$createAction(1, actionGroup);
' T3 h0 G: ^: r$ v schedule.at$createAction(2, actionGroup);; I4 b K& E0 i8 d0 ^3 F. b ^
" |% V5 j: s$ Q- I
} catch (Exception e) {
3 d, t8 e% z& s1 p9 D e.printStackTrace(System.err);% {' y- `( s; b
//System.out.println(e);
( b, S; S% t# p1 ]1 ?0 c System.exit(1);
' m2 |! g, X% B/ ? }4 F$ k0 ?$ u0 c! ^- m
) E6 Q1 \! V; I9 s
0 r" q! l' o( U1 A* [ }2 F& E. N% ~* o6 t u! @8 K
0 H' B& e! r- ]- x) W$ L
private void swarmSetp() {
! D9 K( X" j$ U9 w list.addLast(new Agent(Id));9 w' v! s: T0 ~4 N+ G8 r3 t
Id++;1 k5 G L5 e" J8 P% O$ L
}
) T4 K; E. l0 U6 E! j- f" Q1 E4 H( U; u% K; r
public Activity activateIn(Swarm context) {, w* e5 f3 w2 l# U. l1 d% ]
super.activateIn(context);
' S: k% q2 l1 S5 y" D8 m schedule.activateIn(this);
, Q1 o. ~( A, d1 K8 G, } return getActivity();
* t6 k' P, R& L+ s* h: s! K1 W) c }( J! w4 M3 n& f8 _( w9 [
8 E" t. |: a1 _: ~: a$ j% B6 X
public static void main(String[] args) {: W/ _3 q- R; n
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) Z/ w; n4 j8 `. x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& |; S* f6 n, F( H7 ^ swarms.buildObjects();8 c8 n% l5 j( t8 ^0 R; K: K. {/ T. O
swarms.buildActions();
8 b( G$ s8 j% [4 O: R# f$ T( D* F swarms.activateIn(null).run();" [1 c* V3 X/ q3 B* c6 c
}" c$ w+ Z4 U9 h& H8 k* J
B( e( D0 t$ X+ B7 G: V6 i} |
|