|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ e |- A7 w# d' X- Q
0 v4 r: b/ j+ H: R! Z0 S4 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 S2 _' u R5 o2 C! i# h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! Y- `; Z' J2 Wswarm.SignatureNotFoundException
) q9 V5 ~0 q3 X; q" G at swarm.Selector.<init>(Selector.java:76)" `+ e. B8 X. _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( @1 R z6 l8 L8 m* I0 ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 N, |# q8 F1 d3 D& h: D% A8 u" E
: Q+ v6 L. |1 {3 ?0 ]/ Uimport swarm.objectbase.SwarmImpl;
5 r; {) z% L6 [ c) qimport swarm.objectbase.Swarm;' x) O% r" |) f; a
import swarm.activity.ScheduleImpl;
7 [9 F/ J1 D6 Timport swarm.activity.Activity;
. {; }. i+ s/ X* bimport swarm.activity.ActionGroupImpl;
1 M3 i8 X9 g! D1 u4 x5 ^" limport swarm.collections.ListImpl;
* ~0 s9 n/ h- a# h' qimport swarm.defobj.Zone; 7 r/ v; V5 n. L3 {3 d' i( m# [" a
import swarm.Globals;) _/ e& ~& U9 b/ h' W
import swarm.Selector;3 F5 U6 b- p5 G4 q0 g6 z
import swarm.activity.ActionGroup;
" ~7 m- u3 P5 e; oclass Agent {
3 B8 i0 M( W/ {. _8 ^2 R4 Y: b( g char id;
- {) ^% ^. z/ t+ }! g
5 O$ t' N% l+ |0 B5 } Agent(char id) {( T: u- J7 P" x
this.id = id;
9 x* b% ^3 h) `, r, C. ~ }
) e4 g6 e* |8 C9 m+ @
2 [# w0 C3 D! ?& r7 A/ Z) m, ? public void agentStep() {
& g8 i) N X( ]* B System.out.println(id + ":" + Globals.env.getCurrentTime());, ^: Q: [/ X/ \5 s, `, p) n# n! H
}
* c# h9 B3 M+ X}
- M& ^) V+ R; o5 ^/ x6 `! D5 z" o# o" I+ V I
public class ActionGroupDemo extends SwarmImpl {3 \ V+ C; e, M2 t, z" L+ u
ScheduleImpl schedule;! B& z( D$ h/ Q+ {; H
ActionGroupImpl actionGroup;
) @! Y. g) v9 B% c: V& l) @/ W ListImpl list;$ \8 l0 c/ \2 ^7 e% Z2 H6 V
char Id = 'a';5 G6 J* O1 b) ?) m6 M
; V h( J" w9 s
ActionGroupDemo(Zone aZone) {
) W5 s( ?/ A& f8 @4 k* }, S super(aZone);1 D' e% Y; p( z" b4 H6 \
list = new ListImpl(aZone);: E+ y3 ]0 z- h
swarmSetp();/ b& Q8 y! E7 J' ?2 c( I9 \1 U
actionGroup = new ActionGroupImpl(aZone);" J' O+ m3 O8 E! J1 S2 T+ C: {
schedule = new ScheduleImpl(aZone);
" S5 s$ L0 z$ o. A try {
' i& D+ p1 }2 Q* A5 u& [5 `9 a0 m Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 a* y% h+ m5 ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) S9 c# W$ T1 c
, E! D6 [% ]* B9 w
actionGroup.createActionForEach$message(list, agentSel);
& c3 u% A. Y8 _8 Y& M" g4 | actionGroup.createActionTo$message(this, swarmSel);. `$ t* f9 C2 ~- z3 n
schedule.at$createAction(0, actionGroup); q" P& a& n. C3 B
schedule.at$createAction(1, actionGroup);
}' N9 a$ U5 T2 S schedule.at$createAction(2, actionGroup);0 i6 w" I1 h( Z0 E+ u8 |4 I$ k
: j( F7 J* j/ s N2 P } catch (Exception e) {
& {9 k h# s& O0 V* G4 w9 M; U e.printStackTrace(System.err);6 s6 l: F; S; D% e+ w
//System.out.println(e);
" Y! }) H. N3 u System.exit(1);
$ N* \9 e7 _. [" r }
* S& M% m( R& q# h
& W0 v. A) o2 G- L& L2 c3 O G* n% D8 H0 }5 z! H
}% U/ n8 J7 j: W) H1 O$ T' n
( w% g* t" w, ]" {- i# y2 o4 s private void swarmSetp() {# r! E: Q# }; x; u2 j- g
list.addLast(new Agent(Id));
7 M: s: o5 n4 |- Q9 ], W4 z8 ^ Id++;
8 y5 ~- m% Q+ D, B' c; U/ h }
/ d" {. T! ?' W5 G% T* u5 |
b. k5 X# j; z6 V public Activity activateIn(Swarm context) {
8 s/ ^6 I4 O* @9 v7 q/ y6 P super.activateIn(context);2 V7 X! C" X9 K( @' }
schedule.activateIn(this);# h3 I* ?( y0 h5 \
return getActivity();
3 i) ^3 P" Y7 x* l+ X/ V }8 I0 b& s! h, v) j$ c
% c2 K' m' Y9 Q/ j2 S; H' U3 } public static void main(String[] args) {
y4 i1 L/ m x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' Z/ v* V; D5 r$ u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 E7 V0 {+ b! M. i4 q$ u5 R
swarms.buildObjects();
/ P U2 M! L! h" c7 F9 h; y) } swarms.buildActions();
/ ^3 L9 I5 [0 [/ V swarms.activateIn(null).run();
0 D) b8 v) X/ N }
4 T2 W0 e; g3 ?" r8 h0 F9 R! A$ r* ^
) a+ j' D5 H/ w v/ N% E} |
|