|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 O8 k9 F6 T0 l) R/ [# J/ S/ b! B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ y0 U) a* E6 q) O2 q+ C7 E* s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 W) [" ~( x/ H0 r! i# N$ q
swarm.SignatureNotFoundException Q/ @* m2 z; O; t# {
at swarm.Selector.<init>(Selector.java:76)0 E5 _# o4 A! I9 H: ^$ A6 O& \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ?- ]0 M2 s. ~9 r at ActionGroupDemo.main(ActionGroupDemo.java:67)5 _8 J6 q2 S) a8 p9 Z
' s$ ?5 a0 q) O N- t3 W
; z8 K9 b8 f) l$ D" ~
import swarm.objectbase.SwarmImpl;
, n% z: j6 Q! G) rimport swarm.objectbase.Swarm;
5 R- Y# j0 U3 N2 C0 k8 k1 [! O wimport swarm.activity.ScheduleImpl;
& s# i+ W9 _% {* Wimport swarm.activity.Activity;, s" S+ n5 e( p- W4 a
import swarm.activity.ActionGroupImpl;
5 B" ^$ h5 v/ [3 r9 ?7 rimport swarm.collections.ListImpl;6 E7 l* R) \1 |
import swarm.defobj.Zone; ; ] @1 R/ F( `& d" O# X
import swarm.Globals;( D3 g8 G: V: a9 z% B
import swarm.Selector;* z% }; @* i0 |8 i' ?
import swarm.activity.ActionGroup; 3 ~, }- ^2 h# @+ b0 T' ]# P
class Agent {7 Y8 ?* N1 j9 u: R, R- T y7 D0 ~
char id;! D- C6 ]2 \; w* R5 p* [
$ y+ B7 _* g3 R1 a/ j: g6 k
Agent(char id) {5 x) z2 R: C9 V7 A0 I# l& |! A
this.id = id;- C' F* g% k) S( `# W+ h8 W
}
; e7 c( B1 ?; P' o3 e: N7 n8 B1 p4 W5 [9 _
public void agentStep() {) S B3 W8 \. Q, i5 X
System.out.println(id + ":" + Globals.env.getCurrentTime());
, U# X4 A# c, P7 M5 |2 X; a* Z/ I }8 B7 {7 I; [1 p: q/ l9 `
}6 s/ @' z# s& a% B2 B n, k
- u. J2 U3 }3 ]) ?2 cpublic class ActionGroupDemo extends SwarmImpl {3 T& u) Q0 Y6 z, f) d
ScheduleImpl schedule;
; R4 `7 F$ f& m6 s! B( U: [ ActionGroupImpl actionGroup;5 [; |4 s$ j3 r$ M* L# O+ k
ListImpl list;
) F; N4 ^2 { G6 ]; ~ char Id = 'a';4 d0 w/ i+ B k. m
. Q: i7 v* |( \& y' P ActionGroupDemo(Zone aZone) {
3 q4 l c. ~6 a$ S, \ super(aZone);
. u( i9 d" o$ |/ v list = new ListImpl(aZone);
; |4 {; v( j! `- [/ s$ E8 v swarmSetp();
2 k; R" G& [% {% E% E3 A* ~, h actionGroup = new ActionGroupImpl(aZone);
" y: d+ m/ Y# g3 ]& L ~ schedule = new ScheduleImpl(aZone);
2 [/ z: P0 S. J* g1 U/ o try {( Y( _* y- Y. Y$ i, i* {' b8 m
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ @4 q( n% R0 f( {5 x Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 }+ G) ~- _8 \/ u/ G
. r A6 t: z( `1 X7 G) w actionGroup.createActionForEach$message(list, agentSel);
. d+ ^6 T2 W/ v6 m1 T actionGroup.createActionTo$message(this, swarmSel);4 {) L; `( X* K$ ^7 \
schedule.at$createAction(0, actionGroup);6 ^7 L: h$ L0 m- }+ z' b% n+ V
schedule.at$createAction(1, actionGroup);- S/ |, E" _: q* W; J: h3 C
schedule.at$createAction(2, actionGroup);( m$ e' R7 p2 D
* n5 V. P$ F0 ]% o& f+ E3 N, D
} catch (Exception e) {
# Q0 g) q& L {$ |0 v+ S( W e.printStackTrace(System.err);
$ \% A* _6 A5 M, Z7 ]& H6 { //System.out.println(e);
) R6 [ M7 o; k% Y5 W System.exit(1);
4 T! N8 L: e+ a# c& l. B& ] }
/ S1 o- m1 Z$ [9 u+ f: L) x& Y0 k2 }0 P* U
& y; l0 l' B, [' `) |
}. R. a) }' ]2 P1 c$ W
3 Q! O# C" W2 u+ s8 i+ d# Y) e& T" ] private void swarmSetp() {
& s2 T6 L. X$ [) V list.addLast(new Agent(Id));$ O4 u( o1 i" p& w8 L: W
Id++;$ I0 l+ {. o! z j2 Z
}
; w, D$ B# k c6 u, H2 X/ x/ N! `' G6 G
public Activity activateIn(Swarm context) {
4 h$ v: b# l0 k+ a8 E super.activateIn(context);
r# A8 z: P6 I9 }/ X q5 A schedule.activateIn(this);
1 b; ?7 Y7 k' T, K9 W return getActivity();
* {0 B7 x; ]1 O }; R5 P- q' y" F7 o
: H7 r! X! q; r j
public static void main(String[] args) {
. G0 S/ [1 K* Z8 P( p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# r0 ~8 t( S& B) Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 Q/ H, ^& {5 b- v4 Q
swarms.buildObjects();
+ w5 }# e B; y$ z$ h" a swarms.buildActions();4 b* t, T3 [9 T6 g
swarms.activateIn(null).run();$ V% ]( E7 c* A# R/ x1 i' s
}
% U) y5 E/ G b/ c$ G9 R- J7 ~& t9 {' C# |- v
} |
|