|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , ?* w3 i, F* y" F, ~, b
. x1 \" z; G# d g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' d- p2 k4 E( e/ a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, f1 f: i4 |1 @! ?& cswarm.SignatureNotFoundException
0 Y+ h" s: o# u. `3 S7 G at swarm.Selector.<init>(Selector.java:76). m* W! G# j, w3 K z! B# a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); n) ?! h( v, ?% `6 k$ t
at ActionGroupDemo.main(ActionGroupDemo.java:67)
' Z5 }( y. i& v4 @2 Q2 O$ n# k- Q- Z/ v* u5 Z( z7 P
! ^+ V1 z8 a7 ?, v2 V* Q) s
import swarm.objectbase.SwarmImpl;
! y. g8 e* ]4 i3 g, Q+ }import swarm.objectbase.Swarm;
) t8 G9 _3 N! J! X! {5 x3 pimport swarm.activity.ScheduleImpl;
; {4 X. Q+ o" h/ m3 zimport swarm.activity.Activity;" ^% E$ I D* i; W- V6 H7 N- B9 X
import swarm.activity.ActionGroupImpl;- M& f# k1 ~6 m7 Z' e, N7 V
import swarm.collections.ListImpl;2 @9 k) _9 |0 x1 a
import swarm.defobj.Zone;
z5 F, [9 ]3 E4 x% i. `. vimport swarm.Globals;' O5 g, s3 b4 \+ ^1 s, u2 f/ I1 e' n! |
import swarm.Selector;
# r1 L; r0 [) `( }; d4 ~1 w5 zimport swarm.activity.ActionGroup; ) s5 i! s3 T% z, C7 N
class Agent {
5 x! m+ P. b4 o% H8 g q2 Z" O char id;
/ |2 B# P4 F( C# Y9 e( Q+ f# y. S7 k7 S$ H2 n7 l* N
Agent(char id) {
* m6 s. W7 e- i n4 P L this.id = id;& _ I3 e* ?- @5 |) V: b$ M3 g! S
}( i9 C8 k! ^$ x$ h5 |2 Q7 b! r; R! x
; W3 j! q$ Z" y5 i! w public void agentStep() {
! ^1 ^2 t: \! L- v; G4 K* u System.out.println(id + ":" + Globals.env.getCurrentTime());+ m# A- H' M @" L; ?
}
8 |2 S9 A: F* x6 C}
/ k2 R5 z* Q2 N! L& i# n" I9 z$ R6 }$ U% H
public class ActionGroupDemo extends SwarmImpl {
! l* n" H( ]* J ScheduleImpl schedule;
* w+ ]0 [# g+ P2 ^. }; C: L; {+ \* n ActionGroupImpl actionGroup;3 }. j/ ] n4 d& {4 [" R3 J9 ^4 d
ListImpl list;
1 n/ K" j% ]$ Z/ b- U char Id = 'a';! B5 U5 y' @6 J. _
. S4 {! ?: k. k& Q ActionGroupDemo(Zone aZone) {9 u* j. D/ ^( L9 T
super(aZone);
$ a" i+ y- w; j/ j0 h/ l/ | list = new ListImpl(aZone);
; J8 w8 ?' `0 K1 W+ X swarmSetp();
2 }/ D; ]: C i actionGroup = new ActionGroupImpl(aZone);. V7 x: L; S+ L, Q( T& U9 Y+ a
schedule = new ScheduleImpl(aZone);" {, Y& X `+ C# W8 W5 q2 R
try {3 ~& V$ [# m7 O+ f5 o9 P5 [
Selector agentSel = new Selector(Agent.class, "agentStep", false);) s: C) c4 [+ V; t; I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ v0 S) f' q, T1 I0 x3 D8 |% a
& y) t, k8 p# M3 N, W W
actionGroup.createActionForEach$message(list, agentSel);
+ S7 T' ^0 h) c4 y6 N+ C' O! Y actionGroup.createActionTo$message(this, swarmSel);0 q1 Z+ _& } o. |4 @/ m
schedule.at$createAction(0, actionGroup);
* |7 M$ D' V8 A1 u- D schedule.at$createAction(1, actionGroup);* E1 H, ^+ E$ j0 E) r1 ]) z
schedule.at$createAction(2, actionGroup);6 r. \- i0 y8 w- l( t
) z' p$ z5 {/ E$ Z8 n4 i } catch (Exception e) {
: z* q( ~% _& W1 T7 j& m, V e.printStackTrace(System.err);
' a% D1 C2 I$ d+ |# d5 Z$ | //System.out.println(e);0 b9 Z$ o8 K# N0 u |2 l) t
System.exit(1);; _8 _/ ~, R: o% h5 c
}
o( D5 j- R T* F, F, f
K/ r7 p3 o% T: [. H9 v8 F& X9 `# |+ { J9 ~' ` P; F. n
}: u, }) v t7 m% T( z/ P
6 Q4 k* D* z0 l, b8 D O2 o private void swarmSetp() {
! N( t. M: B" T- ~! r U) g list.addLast(new Agent(Id));
& X0 P& G4 V. b2 V$ S# a3 D1 q Id++;) K& ^( s& t: P3 a% ?6 I8 c
}* e# ~" v# H1 P, {# t* T
4 K l' i5 {+ ~+ R. q1 a- l9 v public Activity activateIn(Swarm context) {4 a, n6 S z2 W1 g
super.activateIn(context);( e6 f5 n% j8 y% W+ j% y
schedule.activateIn(this);. l$ n, Q8 U; l& E
return getActivity();
, D2 x6 r" y9 k2 e8 D }
9 p" d* [, [5 I' N; h; V3 Z' ^& e5 c& ? o
public static void main(String[] args) {- P4 z$ ]9 Q9 X+ ~" \6 d
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, w" [0 T! r' ~ D8 p5 ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" i! \1 U/ B0 Y" M) O- @
swarms.buildObjects();
- v2 B( p% W2 _+ y# e6 w6 {' h swarms.buildActions();: c$ p7 b- I1 K" k8 J( k
swarms.activateIn(null).run();' r* Y4 A% B+ C! ]
}
3 f g2 F" o3 x/ d$ f
' e& A. d/ p0 Q4 w; V4 y* T} |
|