|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 ~$ z$ F$ t# U: P/ r* ?' P
8 k- Y2 W1 V4 h) _! l! [1 ?9 i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- U) f1 v6 K( X" k/ D' o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# a+ P f& x! D% [/ Y
swarm.SignatureNotFoundException
6 @, b* M* d$ u& w) K0 ] at swarm.Selector.<init>(Selector.java:76)
4 l6 n7 A- m) G! f7 ?' J+ ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ c4 I) p, X6 Q: a% e5 |
at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 g" P0 k ~* I7 D/ f; _( z
6 G0 }9 d# b/ }7 i3 P* R5 C7 H7 E
/ A7 O) l; y. I% _ i; A- r9 {import swarm.objectbase.SwarmImpl;
% Q( P( S9 ]" I8 ?import swarm.objectbase.Swarm;
2 C8 V' D0 V/ J+ q0 mimport swarm.activity.ScheduleImpl;1 x+ H8 M4 v( l1 K7 J$ C4 U' z
import swarm.activity.Activity;! o0 s: s! f0 u& M. I# k
import swarm.activity.ActionGroupImpl;
) O: H1 L) J6 Cimport swarm.collections.ListImpl;
) X. G& J, c0 Oimport swarm.defobj.Zone; 6 L0 u/ y) [) [7 r. ~
import swarm.Globals;
2 {1 c0 K5 t( N i. n. Bimport swarm.Selector;8 `3 L- o: Y' A" _: A! U5 a. b
import swarm.activity.ActionGroup;
" e9 B# J+ I9 B+ Mclass Agent {
6 D, y% Y5 e, b, F char id;
! T! Z/ v- {( y9 [% L( A+ M( k$ D. X: T6 t+ f" @
Agent(char id) {# J/ g5 ~+ z. \1 H
this.id = id;
6 o9 {+ r$ o) Z) r }
3 U" F2 _! B5 }; u2 g) p
. V+ A/ l7 G7 x# ~ public void agentStep() {
! l. E2 o3 w0 A% @0 c, ?( ] System.out.println(id + ":" + Globals.env.getCurrentTime());
) K0 y6 A/ r% P! z3 t% K5 D/ e. z0 G }
5 Z( p+ [( @ s6 N* s" H) a}$ @* J' _" f( |
. ^! e; B G1 ~public class ActionGroupDemo extends SwarmImpl {
5 N8 F/ @) u) [3 h5 J: Q8 B1 i. b* D2 G ScheduleImpl schedule;
@# j; A3 @- E$ I9 C ActionGroupImpl actionGroup;
: I0 S) e, G1 o3 ~. F1 b ListImpl list;
: p* _ b1 A: C) D; F$ Q" c* ^ char Id = 'a';
) z; Z. `/ T% y
- t% N, n3 a, w1 l ActionGroupDemo(Zone aZone) {3 L e( w1 i& k$ U# f
super(aZone);, |! o; N( T4 L! {
list = new ListImpl(aZone);: d+ P; J. D/ y3 ~: P$ t
swarmSetp();% V: L1 m, E y1 ]6 x' e
actionGroup = new ActionGroupImpl(aZone);0 l2 E7 ?( ]+ z2 n# x& q' ?9 D
schedule = new ScheduleImpl(aZone);
1 Z$ O# F2 Q6 C* _; w! S9 R try {; }' L! z( t3 ^* f
Selector agentSel = new Selector(Agent.class, "agentStep", false);" q0 k9 q4 b. w" W, \/ ?; e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 ]: {' `4 p. b/ o% ?& \1 A
$ n# n8 g I1 r/ S actionGroup.createActionForEach$message(list, agentSel);+ }9 B* M: o& }
actionGroup.createActionTo$message(this, swarmSel);
2 j W0 D, x% x. c schedule.at$createAction(0, actionGroup);
@- ?, @/ G* A* p9 q/ T# g schedule.at$createAction(1, actionGroup);" w# o/ E* r) ]. v; }/ f
schedule.at$createAction(2, actionGroup);
+ w) f9 l ?9 i5 p8 w/ P7 @6 h6 b) G* R; M
} catch (Exception e) {
9 U: W$ F7 v! p8 q e.printStackTrace(System.err);, s6 `, N$ j2 I2 J6 C& d% P
//System.out.println(e);0 G- l# g: V6 g
System.exit(1); \5 r# [* t( Z+ E
}
- p: }6 P$ ~! E' {8 i+ A
0 f" [7 M: l- w% C* U: T: y+ A, U) F5 o6 x, o
}
& H! a0 I7 H! d1 q7 h
1 h, B3 w% g# D: |' m private void swarmSetp() {6 ]( q% v5 L! _6 \
list.addLast(new Agent(Id));
% V$ E; @% S$ H9 j; [5 z! e Id++; @, T5 ~6 o1 }$ [* L8 g+ M
}$ J9 E# x( K; I" T) I
: C+ N+ j( x( @0 o' N4 L
public Activity activateIn(Swarm context) {, T6 h; ^; x1 E5 a+ ^9 K; e" j$ a$ q
super.activateIn(context);: G2 h& C/ D7 ?5 m* z& A
schedule.activateIn(this);+ ]- K- L1 l( ~
return getActivity();9 w1 }. q3 A( e, C; h0 z
}
% d8 Z' d0 m; q& d- N
* A7 u5 ]$ `1 v; V public static void main(String[] args) {+ ^* L4 h7 E4 V" M- y% K( y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ Y6 V- f! V5 a/ g. H% w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* \9 F5 `$ j# Q7 @" F- d5 ?8 | swarms.buildObjects();& I" @0 h5 V4 R" k, f Q/ K. w* R5 E2 t
swarms.buildActions();$ ?4 S4 @: n2 X2 M% m* H. f! ~. L
swarms.activateIn(null).run();
& h, Q( @/ J) z7 u' i }7 l: G; d* v" s; N
) P m* F+ }, O& r2 _0 G} |
|