|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 f) L$ ?' H( D, ~. K
& B0 O9 x8 s% M7 A- K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) r( S: m' P k! U+ _+ C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# ~0 H$ N2 E" q0 g+ d
swarm.SignatureNotFoundException
6 v9 h6 N% O9 S2 R at swarm.Selector.<init>(Selector.java:76)5 v9 Q( {5 e A9 P1 K, `% F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 t/ K, {4 v2 S- b
at ActionGroupDemo.main(ActionGroupDemo.java:67)/ i3 N3 @2 a# p9 ^, y0 `/ o
# f' E" A; P% Q+ L2 k! L& V( q( r, ~& L: n/ q" e2 F) [- p9 W" V
import swarm.objectbase.SwarmImpl;7 v, e* Q2 Y" \# z
import swarm.objectbase.Swarm;# ^& Q" v2 k8 R
import swarm.activity.ScheduleImpl;
& M5 F0 l; q2 p. k7 f5 aimport swarm.activity.Activity;/ t1 C9 M s8 Z
import swarm.activity.ActionGroupImpl;
8 U# |+ U! W' g) X- l0 wimport swarm.collections.ListImpl;* U9 l/ b0 b+ R5 ^
import swarm.defobj.Zone;
5 U5 H% L% G* ~+ Z" Yimport swarm.Globals;) T) s, S2 Z1 T m
import swarm.Selector;) y& P0 C# W$ S# P2 l9 W
import swarm.activity.ActionGroup;
, Q8 K* B' b/ l* Kclass Agent {. D& o$ B" r% c6 s
char id;
6 m( B+ p+ P1 }" A N/ m! {' r; N' B, F1 F" g) H5 y8 ]' w
Agent(char id) {! P4 z1 A9 R4 s# l4 G% R# b
this.id = id;6 j) U! p' V$ b0 n p
}
% L7 ^2 I( k g4 C) [: U; s
& j5 D5 S+ |" D5 o( L/ ~ public void agentStep() {" s; ^# u2 S$ P" g1 Y
System.out.println(id + ":" + Globals.env.getCurrentTime());
# l3 e* Z/ v( X$ K }
- u' E/ C7 ^' _' M} F$ w3 u3 }1 n5 s& _
; T- }. e7 l; h! t$ j
public class ActionGroupDemo extends SwarmImpl {
0 e" u% u) i: j3 u# l ScheduleImpl schedule;
( X/ K* O6 {) \; m% D, W ActionGroupImpl actionGroup;
D2 y! M1 {" D0 F# [0 g& x8 P5 R" f ListImpl list;
" X8 G- f& X8 k/ I* n& J char Id = 'a';
0 a3 @0 ?/ J0 u0 D+ y2 V& `
' A% m/ H$ r; |3 ~, p ActionGroupDemo(Zone aZone) {: E$ S; E! z2 ~2 H @. Z. \+ A3 p) s
super(aZone);
5 R8 e1 s1 ~4 S0 ?9 e- L. s% o list = new ListImpl(aZone);6 a- A k& \/ Y, M, A$ C
swarmSetp();+ F3 {% k- [" C! C: N
actionGroup = new ActionGroupImpl(aZone);
. x: _, |. |+ v* Y- m1 q$ n- s$ @ schedule = new ScheduleImpl(aZone);
3 i% A& m6 C$ w0 |+ _) V3 v( _; b9 s try {! z2 b6 j- A- M
Selector agentSel = new Selector(Agent.class, "agentStep", false);, }8 }1 X3 Y! p2 D- t3 o- |$ n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, a- C8 x6 u& }7 }, A6 L+ [1 f 8 l/ ^: `5 g1 ]6 T
actionGroup.createActionForEach$message(list, agentSel);
4 c7 K8 |+ V- S0 g! c; q% A actionGroup.createActionTo$message(this, swarmSel);
: }/ h& t" \' b4 B. N7 S& T schedule.at$createAction(0, actionGroup);/ G3 w: c7 C T. u6 {0 C) T# T; B4 ~
schedule.at$createAction(1, actionGroup);
( u. B6 E/ n y, E) f schedule.at$createAction(2, actionGroup);
+ c" x. d2 a# X% G( Y; l9 ?3 a/ g8 t9 r: y! D
} catch (Exception e) {
2 Q* h& [' A4 D9 p8 `4 Y e.printStackTrace(System.err);! w+ O& ?1 K, m
//System.out.println(e);% `& ~0 F6 e4 q/ d6 g
System.exit(1);
' {% ^% l; B2 i% n9 z9 Y }
) l2 K w$ H! r1 `
# v3 t' u1 n# B" x8 g0 N9 h$ a8 B# C8 F @
}
0 R7 z) a8 r8 k v. A& m% P
2 @$ q5 f4 [ M/ |2 G: f private void swarmSetp() {
1 V1 a0 P4 C& e$ c' n0 h' p Q list.addLast(new Agent(Id));% }; a0 V4 j% u" n4 Q' m6 s5 P5 C; m
Id++;
# }$ Y. ]+ n% y# a5 ~ }
- g3 X- N4 L& S. f9 J! c, `8 ]# ?( N( T+ r* G& m5 D$ a
public Activity activateIn(Swarm context) {5 W6 w; K& [0 b3 \% }: y* g
super.activateIn(context);
g1 R9 Z" g% o0 {! j2 T4 @ schedule.activateIn(this);
9 R: q F6 @: s return getActivity();
3 A7 N6 h! o3 j9 F# D) h }
" R2 |! @& r7 T4 L6 s
! D4 a1 d, ]6 }" S public static void main(String[] args) {
) c# g& C" d& A" E- U' u, V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 l' F9 Q6 c* e+ I9 ]2 m0 d0 Z7 c
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 z( a) I1 T2 S! p" b+ \* G swarms.buildObjects();3 X* a! V: n/ F2 ^- D" U1 N8 |
swarms.buildActions();1 q3 L D# }8 D$ o8 B
swarms.activateIn(null).run();
2 m, u1 }1 `0 d& c! V }! i6 x5 ]0 J3 K- i h
* `0 I, }1 w7 x; c; t. Z+ r} |
|