|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ n5 q2 O( V5 |* ~
% p2 |! \/ s( |5 P. l0 x& b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ y( v a7 X% L. |& o" E5 y% m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." _8 _2 Q7 Y) @3 g" Q' C
swarm.SignatureNotFoundException2 U3 T& |1 O" V
at swarm.Selector.<init>(Selector.java:76)& Z5 o( B3 _5 f0 J1 q" \# E" Q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" s% M9 |" t% }; H, m1 \& ~4 G at ActionGroupDemo.main(ActionGroupDemo.java:67)
; u' E$ N2 z6 K- u4 `- }* A& n) |) {/ f( l- u* Y
3 j* d7 O/ D# s9 {7 P
import swarm.objectbase.SwarmImpl;9 n6 W% O4 l) m T: ~* v
import swarm.objectbase.Swarm;3 R7 H% |. x% `7 }- K
import swarm.activity.ScheduleImpl;8 L1 @ G8 e/ z8 d& H3 y
import swarm.activity.Activity;4 w( J! L# T! U6 q6 _8 J
import swarm.activity.ActionGroupImpl;
4 v$ Q9 Q- v8 kimport swarm.collections.ListImpl;
& @0 ?3 O& b3 q# {5 e) [+ j2 Fimport swarm.defobj.Zone;
# t4 U0 W* ~- h& a' z# E' a g7 timport swarm.Globals;
: Z6 [" K: R; g0 j4 A1 Uimport swarm.Selector;# G# i R6 I, ^
import swarm.activity.ActionGroup;
' G* e1 z$ c& j W+ a' l$ @class Agent {
6 g' i! m3 \4 c0 O! e. G3 M! | char id;
6 n8 s3 n7 m5 u0 X
/ f. J/ g) f1 k0 m1 t! z) n( n8 o# m Agent(char id) {3 c+ E4 @& h" n
this.id = id;
e$ ~2 S: R# U: \ p, I0 ~; d }
& O+ C0 C% H1 H* `8 E/ q9 \! J! _4 J5 K
public void agentStep() {& `( z/ }1 @; J
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 N, t8 d/ C7 i* l9 H }
4 M3 P$ x. J$ W/ x}
, s. b0 y' E6 V5 b$ ~# w/ G) u2 j6 L: l0 P
public class ActionGroupDemo extends SwarmImpl {
# s' k7 t" T" N! X K- b# A. o ScheduleImpl schedule;
3 O& F3 F2 H! G z' @0 L, q" S ActionGroupImpl actionGroup;1 v: \0 E$ M. i2 s1 i# Z4 x
ListImpl list;2 g" q4 Y" h" n; j$ M; W
char Id = 'a';' G/ |- M6 Q! A
: U* K2 R2 c7 J& M ActionGroupDemo(Zone aZone) {
1 X; Y* F6 Z: V1 e4 h4 f; E super(aZone);6 n6 f$ P. o4 ~0 {9 A8 \5 n
list = new ListImpl(aZone);
9 Q; o" w# l' K1 L! L4 a swarmSetp();# O# r3 U9 K4 a8 @) O) a% m; \
actionGroup = new ActionGroupImpl(aZone);) C0 u+ _1 K& ^! j; e- z
schedule = new ScheduleImpl(aZone);
$ F: Q7 a' C* L! _ try {' r8 ?3 p, A2 P1 J) K/ N6 d
Selector agentSel = new Selector(Agent.class, "agentStep", false);
; N4 C+ R0 X* t+ o/ B `& A6 ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. O8 X- v8 b; s( @
& K( a! n' r) p! d
actionGroup.createActionForEach$message(list, agentSel);7 k; D. c" k( _
actionGroup.createActionTo$message(this, swarmSel);
! d9 W. ~: k" F schedule.at$createAction(0, actionGroup);
, S$ s, l7 D& C schedule.at$createAction(1, actionGroup);
2 Z$ N- B& U, [+ k) L. o d+ i schedule.at$createAction(2, actionGroup);
+ l6 ]* f* t7 w/ L* m6 K) j {3 J+ K c& N$ o) p' R
} catch (Exception e) { N" f& |8 a) h
e.printStackTrace(System.err);- |+ ~9 }2 q' j) y9 C
//System.out.println(e);
2 N0 f1 F5 n2 A1 d System.exit(1);5 T, _ Z3 w' _$ H- P7 o2 z* c
}5 J9 e Y/ U. k1 K0 W
% M9 [. F& J" f* t) N( R$ T7 T) R* m
1 [) v+ t' g3 Y }
: y: a+ s; T. l6 ?' s
9 b. m1 i& I6 P4 g8 Y private void swarmSetp() {4 Y& l+ E/ a0 X; M7 V) @- \
list.addLast(new Agent(Id));8 u- ]$ f+ }3 Q9 L1 u& M- O, S
Id++;' y \5 n8 _6 o! ~. d* J
}" T9 Q: `% z5 C, _! ~2 k _4 I/ T
: s1 j* [7 f& M9 z' u, M public Activity activateIn(Swarm context) {2 h+ r9 N" t3 _0 Y ?% o% ?& L
super.activateIn(context);6 D$ C" l: |$ K5 {
schedule.activateIn(this);# a3 {% F5 E2 K2 L0 E1 [2 G
return getActivity();8 M: k/ _1 m* d) j1 z& J: [! A Q
}$ {+ ]" x0 N! w; b5 B+ ~1 w$ Q
d$ N! g4 b0 t+ ? public static void main(String[] args) {5 O; G3 Z% `7 D- L8 ~4 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 W+ u+ d" Y$ u+ f* x* |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: g: I! S" N& z2 N+ e A1 u
swarms.buildObjects();
: Q8 w2 d7 I8 u# K8 _7 C" e) `, j, c swarms.buildActions();
( a- Y* n# X* Y' J# m A8 V swarms.activateIn(null).run();
0 m2 W$ @, q! V/ W0 E }
) e, k3 P/ x) F9 A& D
, R D; j( c6 a} |
|