|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % W: t8 v3 \5 m, g' L- p
7 g/ o5 N1 p# r/ C7 d3 j) z# A3 W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, G ] k$ k/ t+ L: y1 k# [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 \4 O7 T/ ^5 q
swarm.SignatureNotFoundException
+ a4 g# b0 @ ~2 p at swarm.Selector.<init>(Selector.java:76) G: c& K! Y' O) u M
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, ]- }( T- C h, G# _! }) c0 k at ActionGroupDemo.main(ActionGroupDemo.java:67)( W6 u: y1 s. }2 C% i
) y" u% ~7 b% _
+ f! Y/ B; g# fimport swarm.objectbase.SwarmImpl;, p# a* A4 g. ~+ O/ @% x
import swarm.objectbase.Swarm;
) s& _! u8 ]; kimport swarm.activity.ScheduleImpl;
6 W( d1 a1 Q, F1 @2 j7 t9 Ximport swarm.activity.Activity;
2 q, G# @1 D; H* K2 K' [8 H8 Bimport swarm.activity.ActionGroupImpl;
, l. @; _! j+ v- ^. k5 g1 I$ vimport swarm.collections.ListImpl;
' G& O; u6 u5 L" s9 _import swarm.defobj.Zone;
2 F" W4 U" M+ L. W% d* T4 V8 A! cimport swarm.Globals;5 A$ [7 W+ y7 q4 q, F6 ?0 d
import swarm.Selector;
4 S: r8 I% e5 Y: N3 W0 M0 Y% nimport swarm.activity.ActionGroup; 0 [2 t! R+ k* s3 Y- h) }
class Agent {0 `6 M$ p6 S$ A" J: N. f! ~8 P
char id;/ V. w2 `9 Z6 J. V2 m5 Q
5 h2 L1 C( ~. O Agent(char id) {% f6 u) k* C" v: c; ?6 \& ~( l
this.id = id;
$ [8 `6 ?; _$ E. t6 ?6 E }
4 K0 X; v% M3 n- ~. K& \$ t/ [( G
' K4 [* L/ {8 R8 o5 D% h& K# j public void agentStep() {; G3 Z* w) W) B) V
System.out.println(id + ":" + Globals.env.getCurrentTime());
& [( t8 d0 o) r& g$ \ }1 J( H, {% s* v
}
% K* J# s$ Z) l, o; H
+ m+ R( i* p' F# k4 z9 ^) ipublic class ActionGroupDemo extends SwarmImpl {3 J4 R9 G8 l3 u9 v7 Y+ s0 t
ScheduleImpl schedule;: W/ ~; Z) {# l" m; Y! ~
ActionGroupImpl actionGroup;# t; ~8 ?6 C. y/ U# B- {, e, z
ListImpl list;' O0 t- g% D! x5 X* F
char Id = 'a';
, U6 t& w1 X3 v; _
R5 \. u1 X; x% ]' t* j ActionGroupDemo(Zone aZone) {+ U R- c2 h' x9 a; d/ d( q; Z
super(aZone);
. q# M9 V* X; R5 o7 i3 X3 X list = new ListImpl(aZone);
2 n- w6 W6 X6 B5 O4 F# X swarmSetp();' p- }; ]2 f( I7 k `3 ^) ?$ c8 ]
actionGroup = new ActionGroupImpl(aZone);
# U$ j1 `- m% W3 x+ ~ schedule = new ScheduleImpl(aZone);0 K) V4 X& O* Q7 \4 B$ d
try {
1 |4 @- G/ @% `& `: F& h2 M5 [ Selector agentSel = new Selector(Agent.class, "agentStep", false);
' q6 b! F e5 E1 U/ @6 M: m Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 w; C! B- C6 x/ K* q! q7 n; C
" f8 N+ @" _% w% l, X$ q0 R actionGroup.createActionForEach$message(list, agentSel);1 g' f+ g4 ?1 L4 h
actionGroup.createActionTo$message(this, swarmSel);, K5 Z2 F5 F6 i7 x. p
schedule.at$createAction(0, actionGroup);5 a: y7 g* u1 Q' C. Q2 O
schedule.at$createAction(1, actionGroup);
- I4 E* t3 @% E schedule.at$createAction(2, actionGroup);7 `* i) v. {, o( w8 U6 c
3 p# t6 |" ?! ^
} catch (Exception e) {2 R# Z9 `. j) ?% U# J2 L
e.printStackTrace(System.err);
- k# B% W5 n* @ //System.out.println(e);+ B c% p) r! A: M0 A! Z! E
System.exit(1);
* K' c- F; s4 g& _ ?. x" ^ }; y5 y# y6 k b, g+ x$ J' Q0 e. L
8 b% e) D1 _5 h# j
* c) x2 I" B4 a6 C. ~" H' z
}0 I# p! A; H. |8 j. P+ D1 I' w* }- m
8 m! u) q6 B$ b, i* {8 [ private void swarmSetp() {' x+ b8 k, V$ n7 U' Z4 j2 T$ a9 u
list.addLast(new Agent(Id));
. |. x) }* |' V. X# ] Id++;
( t) T* y3 W, N" i' l1 T' ?# N; G }
[4 A3 _3 A% i$ V8 r8 Q% I
; D2 L" v# X$ [% V8 E2 o' l public Activity activateIn(Swarm context) {& {* @3 P, C7 J* G& ^, K. [' Q
super.activateIn(context);& x2 f0 ~, f+ E% O5 D
schedule.activateIn(this);) h* o$ P3 ]9 S0 ` [6 W. v
return getActivity();
! [ K! U9 I( {# L# f, ]$ j }8 e/ X1 A; P- ^
0 B' C! e( A; ~ e. @, z public static void main(String[] args) {
/ Q& o% E* { N' s; J( Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 ` \* r& z, u. f' s+ q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( L u( t4 K+ |# j! C: ]
swarms.buildObjects();
% Y# q6 a) { \ swarms.buildActions();& S# q* \# P% F
swarms.activateIn(null).run();: ^2 c1 u" `# Q0 N5 u5 x0 g2 h4 Y
}4 o1 i9 {; V5 Z( E0 M: U
+ R) J% i$ x, o) z: `% R} |
|