|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / T9 l7 {: c" f# V
, A+ x' b* ^/ x. A3 [6 Y0 E' i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 s' B3 a- m* {8 P5 A& B- R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ h) I1 R+ h# {& W2 S$ k/ g
swarm.SignatureNotFoundException
3 a6 I% l* }/ g& e& n at swarm.Selector.<init>(Selector.java:76)
E: x8 k+ D7 n; j) k$ V5 C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; z* s0 s# g9 I' w at ActionGroupDemo.main(ActionGroupDemo.java:67)
# n& W& V, P4 B
9 a0 n1 x/ W0 Q2 b- T* Q1 D3 o, z% U1 w% g1 r
import swarm.objectbase.SwarmImpl;
, v; r# I4 ?- _& N8 S( iimport swarm.objectbase.Swarm;% O9 P* M# a- G* L4 q& ^) q9 T; W
import swarm.activity.ScheduleImpl;- f2 g3 [' R6 \5 ~) |
import swarm.activity.Activity;; U9 S' @; S; o
import swarm.activity.ActionGroupImpl;/ N2 h0 E2 [ r; ]
import swarm.collections.ListImpl;
6 E" `/ S0 v- E% k6 Y' _import swarm.defobj.Zone;
4 F0 l2 h& A' ]* `& \$ l" Yimport swarm.Globals;
3 k# ]4 R! U2 }. _; q& jimport swarm.Selector;6 b/ J, r1 @, H
import swarm.activity.ActionGroup;
2 z6 z9 P3 q8 Tclass Agent { S4 O2 r3 g6 H6 `6 |. [/ P7 N
char id;% R5 i4 x# m9 u; }2 k
! j1 ~9 Z, Q, G( u% R/ z _. W) b Agent(char id) {
+ g% w9 [2 G: O5 i( y this.id = id;, |4 I1 m2 {: Y; D9 T6 j
}
9 s# u2 t# [: n# K/ [$ Y
3 S# n. M$ t6 Z public void agentStep() {1 l' d5 Z! }8 P- P/ U
System.out.println(id + ":" + Globals.env.getCurrentTime());/ D3 B: y& d* P4 E
}
, g& e* u: q: H}
# W2 j( p1 ?+ E' ~
& t+ l% H) ~3 v7 Spublic class ActionGroupDemo extends SwarmImpl {3 w7 F& j3 @5 M# `4 q
ScheduleImpl schedule;
& w: {) e* G3 o V) l" n" E2 z ActionGroupImpl actionGroup;: p' t- c) i5 r; H# A, O* B
ListImpl list;- l# t1 U2 q# m; U# l" J- `. g+ T
char Id = 'a';
# l3 o/ Y$ ^' G# A' z1 P6 a4 L5 f0 D
! _6 M C$ O" Z; R+ H# g6 J6 h3 k _ ActionGroupDemo(Zone aZone) {3 X" N+ M) l v. `# f6 r- D' }
super(aZone);/ j5 _2 a8 g" l, q/ I9 G
list = new ListImpl(aZone);& t1 \& ^3 w9 g. p0 X. V
swarmSetp();4 m# z; G F; J/ q) v' ^' B0 _5 v
actionGroup = new ActionGroupImpl(aZone);
1 u4 Q( U" ?1 A! p( u schedule = new ScheduleImpl(aZone);
& Z- ~- I" _& V8 G/ G try {3 P% |) {% @( e( {$ X2 l
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ F' l0 d9 w1 @* v+ ~ m Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' n2 J; s2 f4 w4 c4 H+ k$ Z
- k9 R6 T) H7 G2 o/ m# T
actionGroup.createActionForEach$message(list, agentSel);
9 F# q7 }! J* e! M" i. G0 H actionGroup.createActionTo$message(this, swarmSel);
^: g5 H& A6 B C$ d schedule.at$createAction(0, actionGroup);' n( K0 ~. F$ u: V
schedule.at$createAction(1, actionGroup);
2 ~0 b! f) a" w$ G, J0 O schedule.at$createAction(2, actionGroup);
3 |. A7 r3 {( S8 p! t0 S- _
6 e) q' K$ u# g8 b3 ` } catch (Exception e) {
( u" |7 l3 d# ? e.printStackTrace(System.err);
# J! E6 V* ?# U) J8 A7 U. \ //System.out.println(e);
4 C6 p1 w3 E8 { System.exit(1);2 A& R6 _7 A0 |. p* X
}% `1 H; @3 W* Z3 z) V5 t
$ M* U* P0 @5 x0 l& Q7 P
$ I: z& r9 b% t }
( j5 @! N# y) B1 ?, g# n! Z* `: z9 }. F( ~0 i2 ?+ a
private void swarmSetp() {# {, W# i7 I C$ |0 M" u8 M
list.addLast(new Agent(Id));' I% {! Z1 g% Q" L( e1 N8 O
Id++;' x! I- R$ p T" o
}
; {+ z4 l/ ^5 g6 M( t2 X
& O9 A! ]9 e( N1 q# _( o. p! [ public Activity activateIn(Swarm context) { d* B3 C; k' }% w5 B% }" r+ \: k' R
super.activateIn(context);
, v6 t2 T6 f- I% i- _4 x( q! f schedule.activateIn(this);* q( c5 q2 i' X5 ~$ p) l0 i
return getActivity();1 x) ?5 a1 ]- T& R7 u$ [
}1 m/ E O- a3 n; c3 b% r5 z
7 w1 v0 w; y+ c/ Z1 D1 B# A$ U X4 l public static void main(String[] args) {- A9 `* X3 s9 ^. N% \. p1 d5 w
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 X* U" q* R* P* V3 f0 ~- ]* D3 A Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# Y% ?- j+ A* x& x! @: U
swarms.buildObjects();
* x) n! N$ l9 r2 X7 I$ {& s9 m* X# { swarms.buildActions();8 D; a( r [) j) Q3 j6 j
swarms.activateIn(null).run();
- L; z6 i" y6 ]" P' f7 a$ o. m6 P }
5 Q, |% v0 T$ ~! v* |) x4 g' u9 F: R: y" J' ^0 @& L
} |
|