|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% m" o; S# m0 r& h8 P( L& P5 P; X1 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" I4 W( U7 {% o0 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 t1 M0 B u. f" s5 dswarm.SignatureNotFoundException2 a7 ^5 w, J( B f, j/ a
at swarm.Selector.<init>(Selector.java:76)
; I) y( L j- Q( q; J at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 m W7 @/ R. ~3 X# s' A, w at ActionGroupDemo.main(ActionGroupDemo.java:67)4 L. s) c( u! j
+ q/ y, ?9 x- ^9 f% z( S# Q$ a+ [. D
import swarm.objectbase.SwarmImpl;( L7 ]2 u$ s6 B8 J8 c& O
import swarm.objectbase.Swarm;
; P% R1 Q$ r3 H R5 `: {7 limport swarm.activity.ScheduleImpl;! }2 B2 R# @# Q7 Q+ y/ [, [: r! A
import swarm.activity.Activity;' X* r* @* H, N& E4 [6 n
import swarm.activity.ActionGroupImpl;
# h! g- F' I jimport swarm.collections.ListImpl;
; C- e4 p) C; p+ [. Pimport swarm.defobj.Zone; $ {6 ~4 ?5 r% K) i D0 B% A- l
import swarm.Globals;
6 C; g; }3 @" D# Cimport swarm.Selector;/ T5 s* j, H, y& |
import swarm.activity.ActionGroup; 3 U/ @+ B& U; e
class Agent {% [, c" m3 \# E( c/ V
char id;
% f2 }+ U3 z: E0 u3 Q" j) I
5 [ S- `6 x/ j6 W/ @ Agent(char id) {# o) p$ @3 Y3 O! j
this.id = id;
0 U0 D j) Y1 S } X: x) Z/ z; E; @. ], r. `
8 c% S1 V W& @
public void agentStep() {
4 m2 ^& ~) O' ~5 G; N# e System.out.println(id + ":" + Globals.env.getCurrentTime());
/ O4 w7 l: S$ h0 i% } }
! _4 Y( J. h; B5 b8 G: ?}1 t5 K P4 ]! n2 n* ]& Z
3 L' `# z9 s( h* K5 f
public class ActionGroupDemo extends SwarmImpl {
/ ^3 l( t# z( y2 ^+ X ScheduleImpl schedule;
4 @/ X% [& u1 G' ] ActionGroupImpl actionGroup;
) \ n4 X. d: u) Z; E3 d. B ListImpl list;& Z% R1 u) Y/ a' u+ ^, X3 M
char Id = 'a';
& t: }. h6 q4 I) V H t7 y$ a4 D+ L" h2 K
ActionGroupDemo(Zone aZone) {5 p$ j6 |/ i2 T$ y
super(aZone);6 s3 M8 [: j, a. l
list = new ListImpl(aZone);% {- C7 C6 q3 u) Q
swarmSetp();, C d9 V" X# g/ N. G
actionGroup = new ActionGroupImpl(aZone);7 f1 Q( R" ^$ Y, @4 }
schedule = new ScheduleImpl(aZone);
8 T2 A# m8 c. ?5 Q1 ^, P try {2 V: J' {/ [8 P. k6 Z; v1 c
Selector agentSel = new Selector(Agent.class, "agentStep", false);
@7 D! C7 v3 G; ~2 f Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 x* P$ w4 O& _4 V+ a
- R0 P7 F% A8 e actionGroup.createActionForEach$message(list, agentSel);
4 u3 c) A# t+ O0 M) D0 C actionGroup.createActionTo$message(this, swarmSel);
- j/ B5 l& _0 d: V/ b: D8 o" A schedule.at$createAction(0, actionGroup);
; [- c- _- w# H2 M9 ?: u- y/ Y schedule.at$createAction(1, actionGroup);& d' G1 \/ p( }2 C- h1 P. I6 J0 k; E
schedule.at$createAction(2, actionGroup);/ u4 E i$ t& d) _2 ^6 m
& l; K$ o! @! t# U/ g } catch (Exception e) {9 l" W0 P2 w' f
e.printStackTrace(System.err);
6 C- ]$ J7 M: M7 m //System.out.println(e);
+ @- b+ a* ~, _$ t System.exit(1);( B+ O2 _ [2 W3 z7 b6 O
}6 k, `- t& M# m: c5 N* G5 R
! V$ R& m# {( C5 E# u n3 a5 O+ {6 K
}! ~1 |9 T, m$ @) j
: S6 y( y/ [, T; ~/ n2 l private void swarmSetp() {
( b! y3 P( H* ~6 r, X+ B8 R: w8 r0 D4 c list.addLast(new Agent(Id));
2 b2 z+ y. e" M Id++;4 z' O$ r! ]( x& R, Z( V% H
}
% M; p! X0 L- ?/ N+ u5 K" M( J7 N7 M( r7 q) W, V2 K
public Activity activateIn(Swarm context) {* R. \3 g/ @' T$ ?8 S
super.activateIn(context);4 d/ @- [& F% j0 T) e) e/ N3 b
schedule.activateIn(this);
- \- Z' Y0 I/ a; s# e return getActivity();( ~5 j& w' a/ w! `5 L# q
}- U) Z" y( H8 k+ X
0 u0 M A$ ]2 s, m) E% `
public static void main(String[] args) {
' n6 N2 t7 w; k# L8 U* _: ?( e4 u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! r+ U) h* L; E# \3 W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 X6 b4 ?! x' o8 W/ T9 F swarms.buildObjects();
3 P# e5 _3 u/ J0 W" I+ X0 ~/ i swarms.buildActions();
2 S, u- U# C" X1 O: G swarms.activateIn(null).run();7 O, F X1 z Q5 _( m- O
}
5 F; ^( K$ |9 ]$ F- }; ?& G9 P$ }) o
} |
|