|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 f' |8 X! k0 K- C: D
; m( [$ [; i4 _+ Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* l! R# q4 |4 g* D) S0 x! [% q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 C0 t3 C6 M' [' D
swarm.SignatureNotFoundException
& _; Z' R* C0 s+ b at swarm.Selector.<init>(Selector.java:76)
9 w$ k: k) a1 ~" ~( x. N- O2 f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 H9 T2 i5 i J( ]: V
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ i0 j- a8 K% W* C; H2 J( ]# k. z3 D6 W4 y6 S" R
% ~3 h( X5 V; d- I9 P, y5 d' V% Iimport swarm.objectbase.SwarmImpl;
) F) O' T; @& f; `& y$ Y; \4 `import swarm.objectbase.Swarm;0 Q- x, N, p/ F/ c, U
import swarm.activity.ScheduleImpl;
3 r8 x ~1 e P; p! X& X- Oimport swarm.activity.Activity;
z. C! h& |/ Q& W" qimport swarm.activity.ActionGroupImpl;# @0 ~% q8 _- R4 Z( c+ J
import swarm.collections.ListImpl;
; ~; W, x9 D) A1 ]( f7 Z; fimport swarm.defobj.Zone;
, Y. x* M- x$ P$ L' k# ?import swarm.Globals;
2 `8 s7 F/ t( U5 o: ]! u4 uimport swarm.Selector;$ H7 c+ A, E H2 H; [
import swarm.activity.ActionGroup; ; g5 w+ g+ u$ [
class Agent {
7 L* ~+ H$ y9 \ char id;+ D: {/ \$ h0 _3 G/ f( Q; L" ~% c
4 H; G3 ?/ Q9 K% X e* N
Agent(char id) {
# O8 p* F) r$ n+ s/ w this.id = id;! _6 H: ~+ _- ]7 k/ O& e2 j
}2 h H; C" i1 V- h: v1 m& S
4 S0 T. w8 I7 {& F7 {' Q public void agentStep() {0 ^5 X3 d/ B- u/ u, u: f
System.out.println(id + ":" + Globals.env.getCurrentTime());) e$ m- |. W' G$ v
}( b D. a. _8 Q p6 R1 {# M, j
}
2 {/ |* K! e' o- |4 G1 g" o) b! Y7 m0 C' y
public class ActionGroupDemo extends SwarmImpl {
0 a+ [" _6 f& b# |2 V/ H" ? ScheduleImpl schedule;
1 r( f: f$ _/ x: s ActionGroupImpl actionGroup;
; u- b( j8 B1 U) W0 [ ListImpl list;
3 g2 R+ I1 i' |" Q" O* H3 K! B/ M char Id = 'a';
6 n" |% }6 Q' }( \- ^. L. z" r3 }; M1 |6 q
ActionGroupDemo(Zone aZone) {! l" B, F" R$ X, Y! w; K4 a
super(aZone);
/ e+ i# q: M: j$ o9 W list = new ListImpl(aZone);
; l Z/ S( K, A4 d( c swarmSetp();+ k+ K: C+ o9 g
actionGroup = new ActionGroupImpl(aZone);5 J9 ~+ Q! r, Q8 ? G5 R
schedule = new ScheduleImpl(aZone);
7 C- p/ G7 \( ]: z4 s6 z try {& u. R. i% h0 C$ G
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& o2 [% Z3 M5 M& w$ ~0 y# D+ } Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" t8 f3 p4 C1 p) U# h" C
) ]- o. e9 L& L5 F6 ?$ S actionGroup.createActionForEach$message(list, agentSel);
; H- G1 g, j' F* K( O: c actionGroup.createActionTo$message(this, swarmSel);. h% _6 v# q9 M, X/ W$ ^ L7 {
schedule.at$createAction(0, actionGroup);; @0 T2 Q3 D4 c7 [. ^
schedule.at$createAction(1, actionGroup);
; G5 b2 n" K4 D3 [ schedule.at$createAction(2, actionGroup);
, H# a# V0 s7 r/ _* {
; x' K# m1 H6 F } catch (Exception e) {0 n8 A+ R2 y+ v8 d7 u
e.printStackTrace(System.err);
+ Q2 @# ]0 J+ L4 L( e4 q3 h //System.out.println(e);3 f0 ?8 V H+ u$ k/ W- U
System.exit(1);
+ U0 [( B" r% B7 H, ?* _" T( q% N }) c$ b8 u$ h3 _$ V) y( W: b
& Y/ Q4 }2 M! e, K! h! c( T" H! p, |" f. l
}4 Q$ Z: {5 X& x3 g: H
9 [, h4 [6 r0 }3 A/ h! @% g
private void swarmSetp() {+ {; E8 m/ H2 _- K/ P* c( E. I
list.addLast(new Agent(Id));
% C, A) V& j0 H4 ^# k" z1 Q0 Q Id++;& N5 e3 w: p) B" G
}6 Q; W+ |/ U9 \. S, n0 V" k. D) U
, R, Z5 z: u, T1 z6 y ]
public Activity activateIn(Swarm context) {8 ?. t% ~% [4 i7 I
super.activateIn(context);
7 V* F- X; c. F+ c schedule.activateIn(this);
. X P- l8 J8 l4 G/ |" q return getActivity();: s; ~* S+ f' P
}
2 W9 @. j- X( v4 |
* F& t" |) |& }& b+ A v public static void main(String[] args) {/ }: s4 P) N+ ~6 c9 L! C
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# D* f. Z0 i# a Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( g' B! Y4 I, h/ O swarms.buildObjects();
1 }) L# I' x# ^, U9 M5 r swarms.buildActions();" ?: y! m7 s9 F, b4 d
swarms.activateIn(null).run();, K/ B' h( x% K, @7 S$ G
}+ [. @) v" ~; ? o; `' D7 _- U
2 P3 k* K, V" E
} |
|