|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 J' T; }* O5 C1 s% I
; J/ _ e% t/ B( S+ J9 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% g$ L2 v, e$ a! Z3 f [* N. @0 d- v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' H5 E I& g; ]swarm.SignatureNotFoundException
$ T5 g0 i; h0 P5 U6 { at swarm.Selector.<init>(Selector.java:76)
( W; B# H2 P4 O1 W {8 j/ { at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* t- _: f4 @( [( y, F at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ s: i4 W% R [* B( Y+ z( s
( s$ ]' o! } s6 G, X" |6 f. g6 M3 P0 ^* q- r i
import swarm.objectbase.SwarmImpl;% C Q$ `1 n) l
import swarm.objectbase.Swarm;; T7 |, y1 o g$ M
import swarm.activity.ScheduleImpl;& N" t3 e. l! n. a
import swarm.activity.Activity;
v( N# ~, n! Vimport swarm.activity.ActionGroupImpl;
3 C" G; ?+ Y# N/ H, Timport swarm.collections.ListImpl;8 u9 m2 Y5 m' M3 q9 C8 ]. m
import swarm.defobj.Zone;
# p( c) g; p/ d7 D$ pimport swarm.Globals;: n+ e& L+ U3 W( m! t
import swarm.Selector;- D; g3 o+ C* ^4 i1 O8 d) U Y
import swarm.activity.ActionGroup;
8 b! F/ n; F! _class Agent {
+ E# ~* {( U- o3 F u# t3 ` char id;
# l3 G% ^6 [# s0 s, j. I5 W- L9 V
! `# k* t& d& w9 r1 U Agent(char id) {# h9 J5 N( H2 [9 T' b$ ~
this.id = id;8 B* _2 R, S' Z# k9 F: i% [
}6 T2 }5 I7 B6 M5 y( m6 z) g- L
& f. p( }5 t5 |1 q. r+ F' U public void agentStep() {- R d/ V& A4 _: Q1 W3 h1 y
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 [/ W- a3 \& ] G }$ S! N+ E" A6 x/ f
}
m( l( @3 b4 f1 n0 F5 X/ x0 ~
* ]7 |# z; z: r2 Qpublic class ActionGroupDemo extends SwarmImpl {
9 Q5 | m, O( S4 z2 |& g; o% o ScheduleImpl schedule;
# F& i$ Z" q: F) _ ActionGroupImpl actionGroup;
' c1 r r- d* E4 O3 }, n$ c/ j! Q3 E ListImpl list;
1 [; m7 d: z3 G1 b char Id = 'a';" R8 ]/ I& R5 @. C) j( w
5 c, F; w5 J* N6 p7 n ActionGroupDemo(Zone aZone) {: l. {8 _2 V B9 y6 E
super(aZone);8 D+ T& t( X5 r. ]; c4 s1 C- R
list = new ListImpl(aZone);
0 C* d$ |8 ?9 q- L3 X9 k. } swarmSetp();" Z6 ]1 n1 U o I E3 M
actionGroup = new ActionGroupImpl(aZone);
, f3 e4 J! h/ W4 D' m schedule = new ScheduleImpl(aZone);
2 x( h* j+ ^% A, @7 B" N* D try {6 q" A4 A+ {6 K- a% u3 p
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ u8 t4 g0 z& u: f4 `- ^# p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! p* i( ^- p$ c7 P# X
3 K1 r: N+ {" V7 W actionGroup.createActionForEach$message(list, agentSel);% Q3 E5 F) p' l2 g" V
actionGroup.createActionTo$message(this, swarmSel);5 _1 z1 P: E9 O% ?
schedule.at$createAction(0, actionGroup);$ W' x0 h0 S8 [1 i9 M: W
schedule.at$createAction(1, actionGroup);
! \; y' O; ?2 X% J$ ~9 c2 m schedule.at$createAction(2, actionGroup);6 {" L$ `/ N3 L2 e7 d! j1 y9 d
1 @( t9 @: d5 b3 Y' f5 U p
} catch (Exception e) {
5 I9 R4 V7 G% _9 `* ^ J) J1 e e.printStackTrace(System.err);: N: {5 K2 z9 E) D- h
//System.out.println(e);/ n4 j' |2 K+ p1 Y8 e* K
System.exit(1);( Q! b! b, T/ P: ^! ]- y! i3 _
}
0 h" W* V7 V+ m( n4 z
. l, b' Y; U2 x$ _9 A0 `: H" h& _# s
}
$ P$ O# N7 U+ p4 y! @+ R# l* f8 b7 R/ b) n) r% u/ |2 c3 A) {
private void swarmSetp() {
% o" `3 N* Y0 k; r1 t list.addLast(new Agent(Id));
- H' M4 c0 q) ?6 t# p! `% } Id++;
# S1 a- m1 J6 i& n0 j0 a( D& N; n }7 r% z O* v+ R! {5 l* U* g6 T
% _' j' \6 j3 }/ Q: Z+ d. c; Z& Y- t
public Activity activateIn(Swarm context) {
7 U* f4 O9 n* z' ~: W& S# V super.activateIn(context);/ ^* k$ z r4 ^
schedule.activateIn(this);; ]( T$ h& B* g8 a* @, |/ J
return getActivity();
/ Q7 ]& f# j! C. ? }
+ D+ D5 W- L/ M2 a3 R( _; N3 ?1 G" P! t; Q% Q" G6 [' [1 t9 b5 v; Z
public static void main(String[] args) {$ p2 P0 `# A8 a" v3 O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); t1 ~6 C K3 L
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 R7 c) ~- s# M9 p' A swarms.buildObjects();" ~6 @6 x2 U2 J7 U2 t. t& R: l
swarms.buildActions();
G2 `& B/ z4 X2 t/ C, G swarms.activateIn(null).run();
/ [6 a7 u" i% B# P8 _ E }
* i$ Y6 E* h2 k2 Q: W7 V7 U6 G
, }# _ N) F7 ]1 ~' N6 ]0 V} |
|