|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 O- v: w: D1 A' F/ N$ P! L
! w: Q" n I1 d3 h9 W: ?7 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 A$ n# l; a: N$ U: o; ?+ V; @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* ^# C% f5 \* B! K4 `+ Fswarm.SignatureNotFoundException
" t% L8 t& @; L: o8 u at swarm.Selector.<init>(Selector.java:76) v( H; m" K, C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 `$ N; N `; L% M! h: W at ActionGroupDemo.main(ActionGroupDemo.java:67)
( f1 p) d s& E9 t$ k$ Z
r$ b+ d0 K4 p% Y& u/ z ]1 h( f3 g6 ] @7 ]
import swarm.objectbase.SwarmImpl;
5 R& {1 g1 O3 Eimport swarm.objectbase.Swarm;
. T F. e. |" b- e% I, Rimport swarm.activity.ScheduleImpl;
8 s7 R; ^2 |3 p) a4 Eimport swarm.activity.Activity;( Q( O2 d( h9 \
import swarm.activity.ActionGroupImpl;
0 x* L3 X$ L- a' k A# e& p, p5 M' Wimport swarm.collections.ListImpl;
. g( N# i4 r: _6 yimport swarm.defobj.Zone; 1 n. T+ K+ z, c/ d! q$ f
import swarm.Globals;
, v3 p# ?9 R0 F1 `: x- b. oimport swarm.Selector;4 p, P& \. u9 Z( `4 G2 c( x
import swarm.activity.ActionGroup; . f X/ p. i, D) @* s
class Agent {
% h; L( f# I& B* ^% T char id;7 {# K# j" g. V) U* ^
6 T6 J' q/ ^/ C: @
Agent(char id) {3 M9 ^' h- z( {- M! Y( k) g
this.id = id;& T& i$ g0 `* k: p% j3 W
}
/ P/ C" n& A- {2 Y
4 P, f; K C+ O$ l/ g. n public void agentStep() {
+ e1 U) N/ ?0 ~, `' s System.out.println(id + ":" + Globals.env.getCurrentTime());! @7 E3 c a! G; _7 I
}6 ^' _; o; d2 C( k+ H0 G
}
' ?5 S* _+ ^8 k# j$ D, i* E% @& A4 Z) z9 R0 Y, t4 z5 h* K( A. j# p
public class ActionGroupDemo extends SwarmImpl {
- e, n2 ^' ^8 H3 y ScheduleImpl schedule;3 b1 @6 M5 N; y7 h6 m) \
ActionGroupImpl actionGroup;! p: ~" z7 x0 U, w" U4 F
ListImpl list;8 q5 D5 t& K+ y* [/ e
char Id = 'a';( y7 a5 n' B6 E
- h' d& P" Q: b+ n4 B" [; Q
ActionGroupDemo(Zone aZone) {
3 H+ @1 ~: L8 ~0 g5 o+ J$ f9 k super(aZone);
$ n. E: i& j6 G; d5 H: b list = new ListImpl(aZone);7 l# G( J2 ]+ V6 N4 V2 A8 n
swarmSetp();+ Z! n; w k: _8 G5 F+ C
actionGroup = new ActionGroupImpl(aZone);+ w( E3 c/ L& H( o" _
schedule = new ScheduleImpl(aZone);
2 @4 {, P5 x# y3 V# x2 c6 n try {3 u9 e: P, F( _( @7 Y s
Selector agentSel = new Selector(Agent.class, "agentStep", false);& r6 G8 `) u& s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. g9 [: {& u; N: p+ @) E5 c
2 z+ U/ C! [7 L# [$ e8 ] actionGroup.createActionForEach$message(list, agentSel);2 `2 w! K! x+ s! _
actionGroup.createActionTo$message(this, swarmSel);( t. b# F+ e" v9 P1 [! }
schedule.at$createAction(0, actionGroup);
! `" r2 U5 d; _ schedule.at$createAction(1, actionGroup);% X2 {# I; q& n( t% W
schedule.at$createAction(2, actionGroup);5 j9 u4 X- a8 w* C+ I7 s1 {$ _
4 L$ E$ C0 ^( p } catch (Exception e) {. s4 a, N# D5 {, u
e.printStackTrace(System.err);
! M" n2 O! m- A& b) A" y0 f( N# G4 p //System.out.println(e);
( U- K7 l( U& E* ~. j System.exit(1);+ z Z( I4 j2 I$ ^' i$ v# ?# C7 z
}& ]7 y8 I% z2 X5 P, P7 k. X. Q* x
) Q. I- z/ M5 i ^* p( ~* g3 y% T9 }5 u) d% `7 Y [$ `
}0 f) x; t6 T, s. P* V- Y6 P% _: U
2 }5 S: E( V) u& u" I private void swarmSetp() {! f/ `4 z' b. L' e k& Y7 D
list.addLast(new Agent(Id));' S% U i7 ^, n$ ^- j% u
Id++;8 j* e& y7 ^4 ~8 q$ u. ?( T/ v
}
! `7 o# g( [9 i3 }5 u. I7 Y/ ?- @# v- I9 P! K: W s! y. K% s
public Activity activateIn(Swarm context) {
$ s9 O) `# [* N( u super.activateIn(context);
! E9 f" \* O, V4 v schedule.activateIn(this);/ j' t- |6 j- B6 y0 u4 F
return getActivity();
& ]! s( X+ p/ t+ @# g- n9 H }+ t. G, I9 c& q' `* V& W
% V z) O K, O1 x, n9 i public static void main(String[] args) {
$ W/ M; I- e. U: G3 C Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 a) m7 H6 |: j
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& k. F& Q( [% {- p
swarms.buildObjects();
3 ?$ k- ]& f& u5 R* G swarms.buildActions();
Y% Q+ ]8 ]8 D, r3 f) _ swarms.activateIn(null).run();. q# F* R, ?& i6 Q8 ?- Q2 \# g
}
* ^" Z6 d. Q- T) c
% |# _3 b1 u( g: s# h( O' `} |
|