|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ L& O: X) g+ |7 \+ u" w; _
. {4 Q% R# D N" k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 N# t( o& m% A* n% y s( c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ b( A8 ?& r* _8 u, [swarm.SignatureNotFoundException
) A |, `, h7 F7 W at swarm.Selector.<init>(Selector.java:76)5 L! P- m# P0 R" {! r9 |
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): v" [2 D4 G# `1 W+ {# \/ m4 A
at ActionGroupDemo.main(ActionGroupDemo.java:67)" k! q6 x! }5 ^: X a* {. B
! x/ l% Q- ^1 [4 d
1 t# O B2 \# k) }import swarm.objectbase.SwarmImpl;% G3 }4 l/ C- m' P! T* c0 Y
import swarm.objectbase.Swarm;0 G7 M, u) f4 q# r
import swarm.activity.ScheduleImpl;
: M" o' j" Q1 e( s' b- ^" q2 {( limport swarm.activity.Activity;
- Q. B' w$ \4 Jimport swarm.activity.ActionGroupImpl;$ a/ i6 X. h. M
import swarm.collections.ListImpl;- p6 r1 G6 Z6 R O
import swarm.defobj.Zone; ) e# L: d: J7 d4 W, L
import swarm.Globals;
1 n( j9 V: p( @ r- H& himport swarm.Selector;
. r- [) P8 ]8 Q1 M* q D: yimport swarm.activity.ActionGroup;
" O% H3 l& w. I0 x1 G% U: i2 nclass Agent {
( a. f! R: n# \9 L. {0 q- @ char id;0 [% B) q$ {0 _$ N
& \ V- E4 T- c5 ?2 i2 W) H
Agent(char id) {" N9 p! X+ X" Y5 C% R
this.id = id;0 O0 \1 P( D4 }$ l# U* n
}
+ i0 I8 x, ~6 i, M1 v9 v8 L$ H! P {/ j& Z1 r) m( M3 k
public void agentStep() {
4 M2 h9 p/ R5 h6 v5 d8 E: B6 [9 \ System.out.println(id + ":" + Globals.env.getCurrentTime());3 k: f9 G, Z+ |& n! r. |. }
}: k2 `2 a' C8 j. \) {* }
}
3 Z6 @: B1 U* ~' x" w' C2 Y
( g( z1 F+ Z! j0 Bpublic class ActionGroupDemo extends SwarmImpl {8 U: k( n _9 M& Q
ScheduleImpl schedule;- T$ Z2 `& [: S; H" k# C
ActionGroupImpl actionGroup;
; s$ W9 k/ y; P( [6 r ListImpl list;. R) d" n; d9 a8 A
char Id = 'a';" A1 H9 n' K; t, a7 b
6 N* @& s. R: b& e ActionGroupDemo(Zone aZone) {
; b* K. d2 F- }! b super(aZone);
' N: p$ w+ V4 p; y1 q- V- N% P0 d list = new ListImpl(aZone);! C: B& ^2 Y0 k. P4 S, b3 j- G
swarmSetp();
: y2 b2 H1 U- {; U2 S* ]* b actionGroup = new ActionGroupImpl(aZone);
9 C+ g* v# P8 E. l; p. h schedule = new ScheduleImpl(aZone);+ A; f4 a' k+ B. n0 X3 U6 b
try {! s% }+ q' G" O* ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ s: o, a9 }% S8 N. m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ ]/ e8 X1 ^$ `
5 @/ \+ l5 s) @4 z( G" a actionGroup.createActionForEach$message(list, agentSel);1 E/ T1 n* i b) H
actionGroup.createActionTo$message(this, swarmSel);
* o8 w- A- x4 H* I* f1 H schedule.at$createAction(0, actionGroup);
- f: c. t6 k2 { schedule.at$createAction(1, actionGroup);& _, q* c* }* c- I
schedule.at$createAction(2, actionGroup);
* w6 m |8 \4 n' _/ r/ r- X" p* u+ j- U& l
} catch (Exception e) {* k6 O6 x2 d9 V# ~, A
e.printStackTrace(System.err);
4 N' ?5 a% x0 K9 b //System.out.println(e);/ B% a# m- c. d4 G# E
System.exit(1);8 H& Q1 G$ h- L
}7 J2 z2 _+ S9 d1 M2 b
/ b2 h6 U0 y1 o
* W* w5 x0 _7 R& O, h$ r }( {4 q# U3 g+ V$ ^, X
2 D6 `7 c( {4 S$ C" e" W6 _3 P' o: f) s
private void swarmSetp() {+ J7 r0 ?; i, r6 m. F3 g# }8 x1 s
list.addLast(new Agent(Id));
. o6 |7 W; Y1 e# v% D% [! J Id++;$ `) a/ a- Q i
}; i; V/ V; v, @- Y3 h
% Z- Q0 L& i3 e6 I m public Activity activateIn(Swarm context) {" f+ N, d, P: `2 n
super.activateIn(context);: ?9 s h8 f! ]$ N3 L
schedule.activateIn(this);
( P, z: z1 E5 ^8 C; p return getActivity();
7 w) }$ b+ q6 G$ a) m) U; O }
6 K+ b: t+ I' l& `3 E2 d! w1 f9 r' m# g! l% D
public static void main(String[] args) {
* S7 p0 T# k: ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 t6 U- G6 D; x) @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 q# o* u1 I4 r+ r2 k swarms.buildObjects();- N/ Q, g* V0 h
swarms.buildActions();' [, ~4 t# N7 P8 n7 \) S. g( }/ U
swarms.activateIn(null).run();
+ V& }: {) o+ r t }
$ ]. W* |" a) }3 F% M6 |( {6 ]" s6 J, K) A
} |
|