|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + X: V& n. Q) Q2 f) l
0 h- j8 ?5 T, u9 G0 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 W' n4 Z1 }0 W; I0 @4 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 t9 a+ u; v3 H, l0 @$ Y
swarm.SignatureNotFoundException; Y. X a% l: F) h U9 g
at swarm.Selector.<init>(Selector.java:76)
, O! o" c9 _- G! [! c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 V/ O' c: R* J at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 e3 _! S. W( s" G5 x
3 J% D& B; u( a! N
6 d9 x: A7 Y. ]) e5 limport swarm.objectbase.SwarmImpl;6 k+ W# q$ X6 z2 v9 Y) Q$ z6 r% m
import swarm.objectbase.Swarm;
T2 s/ e9 O, I0 gimport swarm.activity.ScheduleImpl;
" V! p4 f; I% ^$ \/ m, aimport swarm.activity.Activity;) H3 {! c! A8 t% i% o% P- |- \
import swarm.activity.ActionGroupImpl;, I9 G/ C- q0 H ~1 k
import swarm.collections.ListImpl;
, P* D- j; C; Y% h- H; T) q/ pimport swarm.defobj.Zone;
2 d3 E0 `; Y0 p3 Q" L9 bimport swarm.Globals;
' `/ e: y% v$ T% W# s% himport swarm.Selector;2 f3 K) `) Z; z6 H0 s( H
import swarm.activity.ActionGroup;
* x$ Y o8 i7 Y8 x. C( |class Agent {
. i/ o ]2 {, ~/ `8 [3 c1 S char id;
( A( p" y4 _' d2 {) Y$ W5 G K+ a2 E2 Y
Agent(char id) {
5 F' J* G7 }* J6 a this.id = id;( K4 i" P- f S5 A$ T8 ]
}
; ?' g" f* m7 t6 e8 a
) V( [ R1 s) p8 J, p4 _ public void agentStep() {2 _& W! x! t- D
System.out.println(id + ":" + Globals.env.getCurrentTime());
S0 M* f3 K6 Q: D0 o5 |: o- O3 l }
$ a3 }3 B" v: R/ j! R! ~} t. R8 ~" r/ ^
7 U2 H8 d* s0 l7 ^, S- I$ p/ qpublic class ActionGroupDemo extends SwarmImpl {( x( K: s( i( K: M
ScheduleImpl schedule;
5 J0 @8 b4 p! b: W) d ActionGroupImpl actionGroup;
: b$ d5 k @+ B1 Z0 [; e% h ListImpl list;
+ u7 W8 m2 @+ _ i char Id = 'a';
$ Q, q. s+ J M% w6 `* z
2 R! K" u: B3 d) ~+ J ActionGroupDemo(Zone aZone) {
# w! ^+ s" N5 W$ p) p, p, ~9 d% v super(aZone);
1 B) {5 c6 |. T l list = new ListImpl(aZone);
3 \& K, n( Q0 Q3 b8 `- ]* W swarmSetp();/ N5 w3 Z* o( H1 @3 c
actionGroup = new ActionGroupImpl(aZone);1 V. F% z9 b: J/ Y
schedule = new ScheduleImpl(aZone);7 A& P2 \# i/ |( A/ s
try {$ k/ m! S- H2 k! k
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 d0 i+ U9 C0 W; t+ H- W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 f% z$ P- S0 f9 U: q1 ?. b
1 f; \# s3 k d6 C f& n( M, Y actionGroup.createActionForEach$message(list, agentSel);
6 v/ l4 g, K* W h actionGroup.createActionTo$message(this, swarmSel);
5 p' G( R0 p# ^8 j8 \0 n G! z schedule.at$createAction(0, actionGroup);) i& V3 k5 A3 b0 _7 C
schedule.at$createAction(1, actionGroup);
1 q* }) F$ [& U6 g. r8 c- `) Q: U schedule.at$createAction(2, actionGroup);) ?6 S C/ @: r, \3 V
* L! A+ k; _8 f
} catch (Exception e) {% F) R3 u) ^4 g+ G# B# f/ S
e.printStackTrace(System.err);8 e1 t, y8 @1 I" b) W; j
//System.out.println(e);# u+ ~ z, l* i9 Y1 D
System.exit(1);
& z) [/ h" Y5 K. K }
8 B. x( w5 k. t6 Z6 ?. R. O! ~1 A O) @# T
/ C' f3 V N) A. N3 |/ t }& U g2 r# q* z+ Q2 J9 I
9 M* X2 L `( @- D private void swarmSetp() {
+ \" R& l2 E8 t( U f7 d list.addLast(new Agent(Id));
. R0 g( R3 V; ?- b# T$ d' } Id++;5 p5 ]5 L: Y2 F7 K
}
1 T7 o; x$ G4 m
; p+ c0 {! p9 C4 [0 |3 A- ]3 X1 c public Activity activateIn(Swarm context) {0 [0 V$ X7 K8 Y4 y
super.activateIn(context);7 A4 k$ e" y1 {3 q$ t1 m
schedule.activateIn(this);8 F! Z6 t3 y0 c( ^" o
return getActivity();
1 c0 t$ S* H2 {; g }3 z6 E6 x& m# W& @ s) @/ w
3 @/ S6 ^$ P9 p& @2 x4 w
public static void main(String[] args) {! T' I9 ~+ p5 s3 E+ r4 Z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 B k- n+ d- R+ @# O' |5 i ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 v5 v) u9 P5 w1 w0 Q3 a swarms.buildObjects();
( q# N( n) U: I+ o swarms.buildActions();
" ^; g1 p( j" c* Z# G1 c swarms.activateIn(null).run();
1 y; J' s2 Y+ ~( \/ E; j {- ~4 { }# y2 x/ t# T& m! d& C5 r) B
9 T4 W R6 c$ K+ e} |
|