|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ f( W; i- V- @7 c8 T: y* q( E2 ^) p7 O) g4 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- q' v) W. B( \" W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( Y j7 f6 k. q
swarm.SignatureNotFoundException- P& i; c( ]& v, O
at swarm.Selector.<init>(Selector.java:76)
. F, D% S' Z, |7 ~0 m0 M! Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 E! f$ Q' N+ n" C+ u+ t# S& v& m at ActionGroupDemo.main(ActionGroupDemo.java:67)
: F* p: l' [7 @) ^3 q3 i e/ E9 z" l5 N N
6 {! y* b4 `* y, Z* K7 Fimport swarm.objectbase.SwarmImpl;6 {9 Y7 x E0 I% j8 z# f
import swarm.objectbase.Swarm;
3 y5 @' x/ \# u9 T: Y4 x* J/ A, X1 W& Rimport swarm.activity.ScheduleImpl;& h3 ^8 P, L0 j
import swarm.activity.Activity;
& i6 R6 x; C1 h1 P; Pimport swarm.activity.ActionGroupImpl;
: i: s) A8 I R0 P v2 m4 R4 @import swarm.collections.ListImpl;% Q# }% Y" q- T+ @
import swarm.defobj.Zone;
7 x1 Z4 ]+ o; j5 C) H6 N# J- {import swarm.Globals;
. n, c4 I9 L. T: f( B+ P2 X3 }import swarm.Selector;
- b6 h7 ? H4 V5 a2 ^4 Jimport swarm.activity.ActionGroup;
6 I4 S2 w* W& w0 h" s$ I0 K6 U; m+ Mclass Agent {
1 l" E4 E0 j9 M2 |; M char id;4 \) W, z# h& X2 n ]) d# |8 D
; P# F% B# z, v& d Agent(char id) {
$ o; t7 Z- v; ?% w* h, s7 Z6 q this.id = id;3 [0 H9 U; e' @- n4 Q6 f
}. @3 F# ~0 ^7 C6 H
! i) u* r8 y u/ x
public void agentStep() {
. f" Y) g$ ]) i! v+ l8 { System.out.println(id + ":" + Globals.env.getCurrentTime());$ l7 T3 C1 }1 @, l
}
2 Z p, U! v& O0 c6 c; f4 h}4 ?6 q0 G+ ]3 y) z8 _8 K) v9 c
( i) `7 J0 D+ i' G% S; p- y% L Fpublic class ActionGroupDemo extends SwarmImpl {2 y; T; [: R# u# p3 o4 P
ScheduleImpl schedule;
9 b2 G) a v+ j; @! n ActionGroupImpl actionGroup;
8 x8 |3 D& [0 P1 p$ E0 J ListImpl list; P4 s/ n, s. v2 s7 W5 Q
char Id = 'a';
% z$ g8 ~: _ Y) D& X
, f) b9 l6 J h k6 P) e; O ActionGroupDemo(Zone aZone) {
8 q e) H. ]2 V; ?' Q super(aZone);
0 n7 `2 \) B. D9 x; d3 G4 } list = new ListImpl(aZone);' ]; h0 n9 j2 B9 j! J
swarmSetp();
& w, C6 D5 G* w2 a( t actionGroup = new ActionGroupImpl(aZone);* T+ @$ W( T: A' o# p! T2 r: r
schedule = new ScheduleImpl(aZone);- ~/ X' V7 B2 h& m2 T6 E6 o
try {
+ y G W( n. @: n6 \ Selector agentSel = new Selector(Agent.class, "agentStep", false);2 O/ M! N3 M. j8 s6 a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, c) _3 d2 i$ s; U0 W
% c U- s3 H [ actionGroup.createActionForEach$message(list, agentSel);0 Y. u$ t5 @) w0 @( r
actionGroup.createActionTo$message(this, swarmSel);
5 l3 y3 m- k$ C3 H schedule.at$createAction(0, actionGroup);; L* A) J! ^- N6 m$ T
schedule.at$createAction(1, actionGroup);
8 O6 {9 J7 r# R |* }' r4 O schedule.at$createAction(2, actionGroup);' C+ ^1 }; Z# x2 x9 U$ J- P
! c% u& B/ M! [: l7 z" }. \ } catch (Exception e) {# p- Z4 ^! `# }; w0 z8 N$ i8 {
e.printStackTrace(System.err);1 T, |" [. E& X1 i
//System.out.println(e);& l0 t! J7 E; T) a1 V* b, F
System.exit(1);
/ e0 B) X L: X) ]$ w+ H6 ~1 l9 M* R }, p7 g4 e! o* S
8 H8 y. }* c: M& ~! E' A
- a. g/ r) I& _4 v! z9 D }& Z9 G n* d+ _9 P
+ ?" ?1 \5 @2 {! n$ ], z) H- t private void swarmSetp() {$ }+ J0 V2 X* h2 N" z( v
list.addLast(new Agent(Id));
d2 P1 V3 r0 c Id++;
7 I. J( p/ A$ z; y* j }
' w5 n$ z1 e4 X2 u/ C
8 Q) S" ?. |7 n" K: g/ Q+ K! u; @ public Activity activateIn(Swarm context) {
- J5 N. s) a% b; [2 r' @& d% S super.activateIn(context);) G+ P/ ^7 g* J; n0 a
schedule.activateIn(this);
. I! D. W5 W2 ]& E" h# d" C) } return getActivity();6 `, h, {* G. E' P; n
}
& w: C! J+ K9 ?( ^" u5 C) K: E1 Y8 P. A$ V( x! y7 Z1 ^9 W
public static void main(String[] args) {, o8 y1 h# b3 s7 u; G' ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, L, b5 a) Y1 `3 Z7 t0 \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ Y6 @4 `/ F$ ]3 g% B$ Y! }5 B; g swarms.buildObjects();
4 M0 S; k+ A' b8 l, ? swarms.buildActions();' h0 `; e8 n" B$ _2 J5 V) Z
swarms.activateIn(null).run();
, L2 j2 ^9 ]/ `6 w/ Y& Y8 Y }, I; b6 T* f. m' E1 V6 ]
) o4 {2 m/ }; a" u, l G! z: H} |
|