|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 J" x2 t# D) w* U0 c* P2 O
4 Z) a# |. U+ t0 p" G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; e. p. ?2 i5 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 `# H$ |: r9 o5 Jswarm.SignatureNotFoundException
& u: R( \8 m: k7 m. |6 @ at swarm.Selector.<init>(Selector.java:76)4 `, z* c5 x) D" K$ l3 C4 M; K" X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% A2 m3 M2 p% R. V+ m' u
at ActionGroupDemo.main(ActionGroupDemo.java:67)& @. ~0 u X2 R0 K q% h8 W
# b" q4 Z7 A1 {9 s
: W6 T2 Q) W* V& ? s
import swarm.objectbase.SwarmImpl;
, K" o# E) H, dimport swarm.objectbase.Swarm;
1 F; ?+ V) S& c Fimport swarm.activity.ScheduleImpl;
( s [5 V% [& D" U+ `import swarm.activity.Activity;4 W8 t; G- M, q( b3 C
import swarm.activity.ActionGroupImpl;
: h' d: |4 B d6 I- }, Dimport swarm.collections.ListImpl;
4 B$ [0 u; \+ D6 i G' H1 vimport swarm.defobj.Zone;
4 i8 e9 w# C2 d1 u1 Mimport swarm.Globals;
# }' R2 V. `& j6 Y R5 c6 _& jimport swarm.Selector;: V3 _/ {& e# j& j
import swarm.activity.ActionGroup; ' W0 p3 |1 j# `- T1 [- b5 E. L
class Agent {
. m; ^/ G( ^1 `: V# Q- w1 \ char id;1 \4 C1 K7 D( ^9 R) N( s; Q) E2 V
; N8 q6 m R* }2 z* E
Agent(char id) {
: t# V+ v4 W) q5 r this.id = id;2 R6 T( V* ^- m4 H+ Z4 A, ]
}
, c# b' u% Y( Z; `" w* a# u+ ~/ o$ e0 V: @; Z3 X* @% l8 d. Q
public void agentStep() {
0 g9 O' S: P; t5 r# u/ N System.out.println(id + ":" + Globals.env.getCurrentTime());
! z8 B4 w# X1 s+ v8 S( Z }2 t. w$ R. p8 N) ~" X1 A) M
} T# R% y" i* z6 Y) w l w& {
( z$ E c- _/ }7 ]- Y! f& V" lpublic class ActionGroupDemo extends SwarmImpl {
7 W: G9 F7 R% y8 u9 ]$ b. ` ScheduleImpl schedule;
; l$ y) X/ `( X( @, c! k ActionGroupImpl actionGroup;' Y$ S5 m: i/ V
ListImpl list;
/ T* T5 [# i6 d; B! Y. W4 ?1 Z char Id = 'a';
7 \4 D8 M% ?6 N) Z5 A- ?! b1 ^
! k9 A6 w2 @' S! M ActionGroupDemo(Zone aZone) {" J: | I3 U5 c( Z5 u; Z$ m
super(aZone);
2 m7 T) P2 Q5 a: t& k+ F. @+ z( X list = new ListImpl(aZone);
/ }# V3 X. x; c) U) k" P N swarmSetp();1 b( ]! [" L% f
actionGroup = new ActionGroupImpl(aZone);" i" ~, P; m) d3 N0 a
schedule = new ScheduleImpl(aZone);
8 s* X: O+ ^) N4 a2 i: ? try {& _0 X; G- |5 C8 k2 k: |$ q' x
Selector agentSel = new Selector(Agent.class, "agentStep", false); S1 b6 M* t8 r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ q M q6 l L+ U
. Z: a c$ K t actionGroup.createActionForEach$message(list, agentSel);
+ D, m- G: c. [6 t4 U5 g actionGroup.createActionTo$message(this, swarmSel);% ]8 K- \' X5 B! b: b L
schedule.at$createAction(0, actionGroup);% J2 n) e4 C% `+ X
schedule.at$createAction(1, actionGroup);
2 J$ s7 a5 [9 l4 F$ }( W schedule.at$createAction(2, actionGroup);$ W) }. A e7 J
! a1 Y7 ]. M. W6 u
} catch (Exception e) {
7 B) m5 B/ _- E( k9 F( _; } e.printStackTrace(System.err);+ D! c$ p- n, {& B) ^0 E
//System.out.println(e);
" ?* L) y8 }8 n" |# ? System.exit(1);
X$ @0 A+ k7 M2 h }
* B/ M3 K& W |) d4 g4 ?1 Y
. X# v+ G3 Q# d: P% @* v( A- n l: u% j, r( A8 y
}
) d! A9 q8 n* Y0 h' g- ?7 q- E
% z8 K- [& p u0 s! g. k( H private void swarmSetp() {
4 k. k1 r! Q/ j$ A list.addLast(new Agent(Id));
! n9 }) Y, @' c Id++;" j& J; S; y( G4 o. D; A0 w
}
- g+ Q% K' P7 {7 r
& T/ e$ x- m* i3 f7 V0 W public Activity activateIn(Swarm context) {
8 Q$ k ^& n, b& W super.activateIn(context);; _* N! o* ^& S) {0 D- x4 i
schedule.activateIn(this);
- u) W& ~8 S6 l& @+ t# \% U+ Q return getActivity();! W+ ` ] l. e" R G w
}/ ?% Q4 B6 r( z7 b
9 u _6 r5 y) I% `, U
public static void main(String[] args) {! E, [% |1 ]4 n2 H" D- O2 H N2 J6 ?$ b. b
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- ]2 O7 J+ O$ q! k2 n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, ~2 e K) I+ a _, \; D swarms.buildObjects();' f+ y; x" q& U! l
swarms.buildActions();
1 E; {- x: j, o8 m3 [ swarms.activateIn(null).run();
9 b' Z: y, E- D }
5 }* z- y! C$ t: A+ Q S
' x4 i* v9 x/ ~2 o( t6 O} |
|