|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 P! f a* i; l% W) a0 M5 j; T& i1 K: q/ ^4 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( z. s6 }/ I& V5 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* L8 u' j1 P! s$ Hswarm.SignatureNotFoundException
( E6 z* Y3 z) I" K# s at swarm.Selector.<init>(Selector.java:76)6 b% d& `5 d/ o, K% E; S
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 m: \; _1 ~: k" j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- E$ i. N4 z3 `8 \
2 i8 P9 n6 G4 s `. ?, X
8 a$ t9 Y$ E: Himport swarm.objectbase.SwarmImpl;
% d! {( Y9 S9 j+ A2 Limport swarm.objectbase.Swarm;
* j" E2 L2 r4 W P+ z- p4 B) s) m uimport swarm.activity.ScheduleImpl;/ b( k6 g5 U0 j4 V/ j
import swarm.activity.Activity;/ w2 ^% B: j* {& p
import swarm.activity.ActionGroupImpl;
& c$ E" s' E2 L3 R- `9 eimport swarm.collections.ListImpl;$ [ |3 y- {2 u. j. \
import swarm.defobj.Zone; ; ?0 t& }! v& c* R. X i
import swarm.Globals; D1 W& \, W6 Y: F; N
import swarm.Selector;2 M Y6 T2 w; \1 H/ }
import swarm.activity.ActionGroup;
* f8 D, d! |) K- W1 X A5 |class Agent {7 l0 u9 _( `1 p3 }4 U9 |9 w H: Z+ R/ m
char id;, }) R) _2 `! R) f" U
* H9 C" Q4 q4 n; m3 F8 j Agent(char id) {
' G3 m; s: n- `2 ^% E this.id = id;" o6 d, v3 `0 W% a
}
7 i2 w0 h) }/ v% m, O7 V; a
1 m3 O! q5 T4 f public void agentStep() {7 ?1 |: E! O+ q; @
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 \( ?1 r7 ^" q x" J% h9 \ }
; b* J( q3 T0 X/ J2 c}, U# D5 G" u$ h8 S" J( ]/ h$ @
) r9 E) l3 S3 M2 }9 Y% ~, Y2 Y& Zpublic class ActionGroupDemo extends SwarmImpl {' }3 l5 F" y( C% D% _$ H! C$ v& ]
ScheduleImpl schedule;
! z1 v5 S8 Z6 q' U; j ActionGroupImpl actionGroup;' B, S) I& U8 K7 `4 a% w6 }8 d& K2 |
ListImpl list;
, x/ H& l: D% e' x; X char Id = 'a';
. {& E/ ~4 N/ T I
0 G3 q2 j, a2 s ActionGroupDemo(Zone aZone) {
1 O3 G0 q7 X0 S3 e" a G super(aZone);( F4 y4 X* {8 o
list = new ListImpl(aZone);
: L3 o1 D& ^* y! _; U5 n6 }# X2 m" R7 ] swarmSetp();7 c$ o9 y, H [+ d9 M
actionGroup = new ActionGroupImpl(aZone);7 @" b0 s9 f" K2 q1 a
schedule = new ScheduleImpl(aZone);
* H7 C( ?7 w3 q try {
# x7 u, G8 a. u7 i9 ~$ g5 y Selector agentSel = new Selector(Agent.class, "agentStep", false);" T1 u8 Z' p7 s6 ^# l& q. {
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 g$ b; L% ~% @0 t/ Q* j, b% a* Q + q, o" V% f3 ^; F' L: a" p
actionGroup.createActionForEach$message(list, agentSel);
( V0 f& l/ A- @( C7 s" o actionGroup.createActionTo$message(this, swarmSel);( q3 k/ q$ Q5 j r1 P6 u& G6 [
schedule.at$createAction(0, actionGroup);9 b- s: @; z: z" i9 H
schedule.at$createAction(1, actionGroup);8 d% i1 N3 d0 |! w' a$ C
schedule.at$createAction(2, actionGroup);( O( U; i# G; T Q3 S, k
* e+ ?- s. [7 ^, w, d
} catch (Exception e) {
) A1 T3 x! ^4 S" D8 S3 D9 Z3 _9 ]; o e.printStackTrace(System.err);
- o3 B5 k* g/ d- {* K //System.out.println(e);
# A2 ^: f3 B) g) \ System.exit(1);' f" I$ J0 |( m) L. E$ t
}
* n& f x1 Y- b& B- b
) U' t" F0 Y5 v" c! J7 O. n3 f; _9 q1 g
}
0 W% X% j# b& i2 B
7 L7 @/ a* A$ r4 f3 k private void swarmSetp() {9 h2 {# ^- S' |! ~+ H
list.addLast(new Agent(Id));
" _8 H* c( q! ^& g; Q Id++;/ C3 ]* @" a% k7 c
}+ R+ m' }( H) V
/ Y( J' i7 @7 y& o- c9 c2 { public Activity activateIn(Swarm context) {* Y3 o, W0 T8 T8 V
super.activateIn(context);
- B% }9 a2 O# z schedule.activateIn(this);
1 P% L" G: H' B9 `: x# e return getActivity();
0 z# }, S6 g% y. e( t- K7 C }
$ e3 V m, m* R- e0 T0 |& K) X9 D0 }
public static void main(String[] args) {
7 m6 J+ W0 C8 k$ U1 k, e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 v: J9 p% j* q7 u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 }. v' o+ I- }8 [( r2 C! z
swarms.buildObjects();, G O3 w& d7 h" M7 ?+ {4 l' {! |
swarms.buildActions();8 q- w# @. p" f
swarms.activateIn(null).run();
& L) Z: S4 X$ d* B! [ }
9 i! S3 x: w( z; Z+ o' e$ h5 d& C6 C
% e! Y! y0 S- J! q} |
|