|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ F, N9 [! a1 ^" e1 |: x2 ^3 w* U+ P# X$ m7 S: s" |3 h+ o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 ^% r5 u8 I, H* o1 Z% g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- o8 Y. e; A4 j, r, Oswarm.SignatureNotFoundException$ J- T3 {! x$ v5 P' W- h
at swarm.Selector.<init>(Selector.java:76)' i+ @; v, f& n$ ~& q3 D# n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) a: c8 o: ?& j8 y8 B, i8 u at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ o) U7 C! b3 p0 m! A; ]; ?# u; l3 L3 D
5 h" z6 y V/ o: Z' t9 J0 I
import swarm.objectbase.SwarmImpl;/ L( x7 H5 l& T, V( w
import swarm.objectbase.Swarm;
4 G' P$ p3 M) [: o7 N" V/ Eimport swarm.activity.ScheduleImpl;/ \ @5 q* w% A- W: g2 o9 W
import swarm.activity.Activity;
% U' X% v7 O% w2 U4 a# c, Limport swarm.activity.ActionGroupImpl;4 H' h' A. |8 s h7 w1 n" W1 `
import swarm.collections.ListImpl;' C5 _" M" R. `9 I0 {
import swarm.defobj.Zone; * |0 G; N& h5 y% l# ?/ P
import swarm.Globals;7 }. i. I, ?; x) a* `
import swarm.Selector;
; J7 F$ C$ y, n* m7 h3 ]: H! nimport swarm.activity.ActionGroup; 5 |; {7 o1 G8 b0 J
class Agent {- i2 }) S% M2 y* i2 s1 n. c
char id;
( F; p5 N3 Q: N0 `6 G4 M, f/ Y7 l! O3 a+ U
Agent(char id) {8 i! [5 T7 i) j: q$ Q6 y/ K
this.id = id;. u! _7 Y5 o& ^- _$ p2 ^$ |
}
* f( Y2 {( {5 ]5 h; c+ G, P) c
public void agentStep() { r5 k9 |% p( s2 x) ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
# [, `$ ~ a! X w4 I! S8 h }
, L. ?, S& h1 U, T9 e}
, K; S( k8 ^' R7 Y1 {) s5 K% s& f4 M
3 ^4 ?% e0 O" r6 N0 Bpublic class ActionGroupDemo extends SwarmImpl {
4 R( \% Z- n7 P4 }/ w# u7 U ScheduleImpl schedule;
8 P/ B+ f2 f, B5 [) o+ ~ ActionGroupImpl actionGroup;
: F' G$ i9 c& [; o I$ M$ y1 R ListImpl list;
. V0 E# {# m. V% s char Id = 'a';; G! v/ v; v1 c
1 }& d/ V0 G7 D; F4 u, \# B- ] ActionGroupDemo(Zone aZone) {
5 D6 _1 A! `* t3 ?* J3 p super(aZone);, M2 y$ j0 W7 c" e6 s4 D6 E
list = new ListImpl(aZone);4 ^- V' t3 b. ^1 z( D: K; d9 l
swarmSetp();
. i7 `. W% O5 v N' | actionGroup = new ActionGroupImpl(aZone);
( K }& ^) R- Y. v% b schedule = new ScheduleImpl(aZone);
7 |/ @& H7 h9 H3 I try {: t. F6 P# D5 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 N) ~3 F ]3 _
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 s0 Y4 q/ K2 K" Z+ s, |
0 J# V4 \ B7 I8 W9 C$ a5 @ actionGroup.createActionForEach$message(list, agentSel);' O7 d- D4 j. U- @# P% L+ V5 w
actionGroup.createActionTo$message(this, swarmSel);$ r% N9 r3 `" Q3 R( M9 g0 ?
schedule.at$createAction(0, actionGroup); f7 A- U X% }$ v: S6 d9 D
schedule.at$createAction(1, actionGroup);6 Y* _1 f- N! Y3 N
schedule.at$createAction(2, actionGroup);
3 `6 f+ V" m8 p# l( O& u5 ` B0 P. G0 ~: w/ _! ^% d5 E
} catch (Exception e) {% |& Z. m- Z6 G- A
e.printStackTrace(System.err);2 Y8 P0 y# e8 `1 Y& w
//System.out.println(e);
/ Y. u: S2 K* z3 N System.exit(1);3 f0 G: y4 M$ Y1 y4 g
}% o, v- H+ A. j
( T' s$ h) o0 q, f& L
; Q( D& o2 I& M. n; b. w }$ ?+ Q2 e s0 t2 m
3 m* Y' }! x: N+ S: }# N private void swarmSetp() {" x2 O1 ^/ t1 m$ d! i6 P# b
list.addLast(new Agent(Id));% a! _* n+ Q) V+ O- s j
Id++;7 C# t/ a3 H7 H8 T! H4 J0 D% p
}
2 m) T( F0 c2 G! p% P3 O3 V3 W9 g+ o: D! R" M9 I( D
public Activity activateIn(Swarm context) {9 s- m! N2 a4 s
super.activateIn(context);
2 c# e# o% I+ j7 n schedule.activateIn(this);
0 J! Q7 j) F' X3 a- y return getActivity();
* H0 j5 T2 s2 i9 D% g }
# L. V* i2 `& {; u \/ D: q
: u; t6 V/ `5 Q0 p6 c9 w public static void main(String[] args) {
1 F3 \( t/ w$ r# J* U8 N8 \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( k# X1 N _+ p9 }1 d; w4 R8 I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 Y3 {2 H2 O0 H! v* L# n1 x j swarms.buildObjects();. @4 c9 u6 D4 d/ W4 z
swarms.buildActions();, \( L& ? `) f! t
swarms.activateIn(null).run();
) m8 E/ t& N5 `$ E9 n }
1 p2 L! p6 o0 o" [
1 ]( b, Y% R! \" U% w) c, h} |
|