|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , y, h* ]( }$ O- I% b
# w6 B& ?& y6 X1 I' g8 V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: f. a, f* D9 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' b/ ^- C4 e; Q' P7 X
swarm.SignatureNotFoundException
/ @% m5 r8 k! J" Z+ l" a& i at swarm.Selector.<init>(Selector.java:76)
# g3 C% h b" p2 k at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; \- _% o9 E) P1 M at ActionGroupDemo.main(ActionGroupDemo.java:67)
, e) h' b, v- ?, n1 `0 N# |9 j0 z1 R5 t
/ w: h, k- ^" a" u; }; H; N Q% h5 g* s! C& _% p4 u: E: q. F
import swarm.objectbase.SwarmImpl;6 e; }8 L) b# Y; [
import swarm.objectbase.Swarm;$ Z: p1 q5 Y& W8 T
import swarm.activity.ScheduleImpl;$ q8 P* P+ O9 W; _# v- ~
import swarm.activity.Activity;7 o1 S1 j9 y* }3 W2 H, b0 F
import swarm.activity.ActionGroupImpl;! n" f% ?! c3 w) K, I: c
import swarm.collections.ListImpl;
) e6 x: ?' x6 n% F, Nimport swarm.defobj.Zone;
i2 R! `* R* K* @7 t( n. _3 ]import swarm.Globals;
* \: x6 ~4 Y8 |4 u ?% ximport swarm.Selector;
7 l3 H; v; N4 {0 m+ x8 [2 }import swarm.activity.ActionGroup;
9 f# r9 B8 O( Q; Uclass Agent {8 [" @. V. S) J
char id;
6 T& [+ U! t) `. _
; U/ ~' s% `: }' T2 d! H Agent(char id) {
+ I0 `5 M B& q" X$ u9 q1 m this.id = id;
' w0 V1 `3 `# v8 b+ z: T5 T }
: k7 a4 [5 B; l' \. C% R; x% b) T' Y0 d0 R4 Y
public void agentStep() {9 I9 u6 E5 Y; ?, ?# X# j
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 ~4 H" C7 _0 R, y% i( K1 O3 V }
2 Q/ ~( P! W, {8 a}' C l x& D( s; y
8 B2 q% @0 V0 u. ~: a- g: u
public class ActionGroupDemo extends SwarmImpl {
. l) P1 D. l( F% m) z3 T4 N9 n ScheduleImpl schedule;
7 _' }' h( Q% [/ \. _" W ActionGroupImpl actionGroup;3 `% M# s2 k2 K& b
ListImpl list;; a6 T( i# P/ n0 V. R9 ]6 E
char Id = 'a';
o) |" S. ?9 `- D2 M: l1 \
) u( g3 q q, I7 ~ @' ~ ActionGroupDemo(Zone aZone) {
' r! g( k: c, J super(aZone);& f. Y& F4 }# g% f% h9 h: k
list = new ListImpl(aZone);
6 ], w$ z+ C+ S+ Y6 f' p; | swarmSetp();6 I j" Y" n: ^
actionGroup = new ActionGroupImpl(aZone);4 O: l& A; ]( Q- g3 e |4 D& `
schedule = new ScheduleImpl(aZone);
& Y% T* i4 I) F+ q/ k$ W4 {* K) ^ try {5 v. {: s9 w3 P1 Q; \
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 y( u, Y. U; v$ |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- U3 ^3 j" J1 _
5 i: X `! ^* d j) e3 D
actionGroup.createActionForEach$message(list, agentSel);
1 K/ d/ C$ {2 V- i$ H2 X actionGroup.createActionTo$message(this, swarmSel);
9 I R, \/ F: W0 x schedule.at$createAction(0, actionGroup);
9 D6 f( p) [6 I) Q% c; M" [3 t schedule.at$createAction(1, actionGroup);! z9 U! e- j8 y6 U' s: a4 H1 G
schedule.at$createAction(2, actionGroup);$ R1 X5 q. `6 r
7 T$ p6 J* r: M5 l+ s* R } catch (Exception e) {
! t! [2 U. t+ k5 Z1 ?: N' [* ?: h7 s e.printStackTrace(System.err);
9 J: H) g2 B! t+ E9 k" X //System.out.println(e);
. I4 O- S; B3 h2 M/ ] System.exit(1);
( B, K; j# W$ F: ]. L% \- {/ l }: q- \2 H+ L1 D; n# F+ }) K
3 B& o- D7 j% Y- s" g, x1 z; k/ {
1 Q2 r% ]" w1 j' A }
( q. I7 A3 ]9 X* ]! b: x' _! u) m, j; d$ C
private void swarmSetp() {
. B4 s& K3 S8 n! E8 p0 w list.addLast(new Agent(Id));! D4 B. D8 P& {3 h- z. M
Id++;
5 P" w) `. K/ m4 r1 }. G }) w; {) \$ D4 J
; S2 M4 J' D4 |+ K public Activity activateIn(Swarm context) {
$ x' [7 }, j/ A& @ T super.activateIn(context);: k- e' v1 ~' b0 ?( a
schedule.activateIn(this);
* K a G0 f* r: v6 G% \3 f return getActivity();
: n5 ^3 W& K% C/ D0 k6 Y b }
% T7 W) z- i4 Q! a! H
0 I4 W: Z: I1 X& u public static void main(String[] args) {
' U! R; t9 t( n& i3 Y3 o5 V* r8 r Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 F4 t* [ J1 m- s! U$ A3 {% `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: \0 ]: \; S( B
swarms.buildObjects();
$ k. l4 h; d" O6 U% V, X swarms.buildActions();
% N* V( n5 e5 S' d9 a1 e( E; y swarms.activateIn(null).run();( O d2 }1 u" I- z, i) @2 g
}, G7 t) ^' c' l: |3 Z; `/ _, j
: a0 m# M! |2 ?& j/ A7 C' t
} |
|