|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 ~( ^, R- Y' z4 B
8 s) `% v+ j' \) A4 |. f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# Y3 F( o& D' U( F% ^! i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 i0 @$ a0 F) s. P2 y
swarm.SignatureNotFoundException. x3 e6 j9 K: [2 l0 K: h. \' q5 c
at swarm.Selector.<init>(Selector.java:76)9 y: x! k7 T; }( ^) C S% s o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' x2 u- u, P7 {8 d
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 ]4 n P; J8 @: \
$ T' R9 i* X8 j d4 {6 i2 |
- f/ x- t) W, N
import swarm.objectbase.SwarmImpl;
1 L5 b( U! u! i+ [& {import swarm.objectbase.Swarm;
' B' ]3 L; c$ m9 O9 g+ D' `import swarm.activity.ScheduleImpl;3 I3 S& z/ f" j. v! \5 Y
import swarm.activity.Activity;
# v* A2 ~% x* o' v* qimport swarm.activity.ActionGroupImpl;) ]8 U/ u+ Z. b& I) K/ z
import swarm.collections.ListImpl;
6 L9 P; l1 O- z2 e/ O7 w$ J' r2 Fimport swarm.defobj.Zone;
: m+ b$ ]! h! X) Q u: _8 simport swarm.Globals;
& b; c7 E# o3 q+ N1 Y4 ?- B& Zimport swarm.Selector;- x& ^. F' R2 a/ p. x
import swarm.activity.ActionGroup;
# a$ C3 e5 {. H Q K0 eclass Agent {
1 u3 r2 Z) d1 j& ?% q char id;
3 ]* c* r+ k, w6 Q0 B0 {7 |5 x6 c3 r3 p. A
8 e6 Q |" Q8 P9 l) N) ^ Agent(char id) {
R2 Q( ~! \4 q6 S% ` this.id = id;7 R3 s2 W; f/ o) ]% t E
}
1 _8 D$ \) \; x, I; s( @5 c! P" a0 z4 c5 t( Q
public void agentStep() {
: i2 U* X* q( {( Q t; C8 `% V System.out.println(id + ":" + Globals.env.getCurrentTime());1 {& t7 U" d8 }+ ~
}5 N0 z: x6 F. c0 G
}
2 u3 \& M2 |& e' P6 E x8 J( @$ t) S* s9 g" s
public class ActionGroupDemo extends SwarmImpl {
6 U- t, D' a4 w% N' x ScheduleImpl schedule;
- ^+ J2 ?7 M, A* y( A" g* g ActionGroupImpl actionGroup;
5 C! R* V, ?1 k+ O' G ListImpl list;
3 m+ P" d% L6 q- j' D( A; p char Id = 'a'; S3 _$ D8 D8 |3 Q4 Y& x) F) R
# q T3 L7 S# W
ActionGroupDemo(Zone aZone) { L3 M! m" t Z: y3 j0 g
super(aZone);% V( N% O8 n9 p+ G! g' L# i
list = new ListImpl(aZone);1 E, e3 i; N/ U7 G, c! G
swarmSetp();
3 K) q: L9 W# u2 \/ Y4 d actionGroup = new ActionGroupImpl(aZone);
% N8 N+ m# ?7 e: A0 ] schedule = new ScheduleImpl(aZone);
" w+ o1 L) s% y( O8 S" D try {# ?2 n, v2 J. }" z
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 z( e# M( {! D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( s* G* S0 G" X e; F* s' r3 [2 z
( H' O! y8 M% [
actionGroup.createActionForEach$message(list, agentSel);
_7 m8 _6 [ a: e/ p9 M actionGroup.createActionTo$message(this, swarmSel);: } U# d$ [2 c
schedule.at$createAction(0, actionGroup);3 L5 v$ L( a" n) ~5 _- Q- H/ l6 U
schedule.at$createAction(1, actionGroup);
- G% h2 I$ K1 M0 _ schedule.at$createAction(2, actionGroup);
8 C- W. V) C0 o/ q+ {4 g0 q: { |0 P4 A$ ?* q0 `6 e
} catch (Exception e) {# O, M1 q" f! Q9 V* w
e.printStackTrace(System.err);
; M: i- y- @. H. q" P$ M/ L //System.out.println(e);
, N5 R2 d* }/ \$ D2 g$ F System.exit(1);1 F/ [2 Y9 j1 e
}& g9 z$ Y; O. M9 e( h
2 l% L& h' g6 ]
5 K U) I+ \& f; `1 P
}
5 I( a( h. X9 R5 U/ K; Q
/ z4 @ P, s ]- v) V$ q" Q5 ? private void swarmSetp() {. Q' n0 s V9 U
list.addLast(new Agent(Id));
! W: P @. |8 |" h& n5 z$ E0 j Id++;
1 l+ ^8 d/ H {& ~) Y }, L) H2 R1 H/ u
/ |; g: c+ t; I8 A% |
public Activity activateIn(Swarm context) {$ i7 Y5 Q1 Y; v- l: b3 @: ]
super.activateIn(context);
+ ?8 ?% c. i( c& ] S schedule.activateIn(this); `" e/ I& v i4 _9 {9 Q
return getActivity();
7 D8 V: I9 i. u# P2 | }
- i* G7 [0 m0 }3 |9 e
9 C/ E; X" i0 p6 q+ B9 ~ public static void main(String[] args) {! t0 M& B* E, o; k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 c0 A. p& ~ J" D" g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; t3 P+ y9 G8 g3 _8 M/ s7 y& c
swarms.buildObjects();
3 |2 s1 P" d5 j, u5 T: U swarms.buildActions();% M$ s& t- n1 `: T
swarms.activateIn(null).run();6 M& G7 X3 |' x7 K2 }
}
5 e c7 T j4 l
& v- ~: n& x/ T8 o, S" I7 O} |
|