|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! R* P! U* j7 |, s6 r5 J: V3 g8 G
0 F( ?2 X# @. f, J/ M2 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 b& y% n5 b: v* X& j5 w' `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. R' n! c: }7 Y9 g# u
swarm.SignatureNotFoundException
?/ P7 T& I9 e7 x! w, c& [ at swarm.Selector.<init>(Selector.java:76)& R: q+ A/ A0 \3 N) t& l0 _, x( g: |" @( U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); |! D6 ]: p7 k% a( t6 z; v* v
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, C* {% [: \0 V# i' u i7 K
* N4 }1 j1 B1 A4 X% H( W1 B
i* V. u7 j K* X2 simport swarm.objectbase.SwarmImpl;
" D8 h3 E3 K: [import swarm.objectbase.Swarm;
3 _) J2 I; ?8 z: }4 Dimport swarm.activity.ScheduleImpl;' g( J. c& L" d3 U! B( Y* n; m
import swarm.activity.Activity;
3 m% z5 i: }( d8 P5 {9 \2 o! ~import swarm.activity.ActionGroupImpl;+ ]5 @5 l' L$ n% Q0 F. D6 T
import swarm.collections.ListImpl;2 T( B" `% B' M. r; n/ a/ z
import swarm.defobj.Zone; . u- b: U' k" N) S
import swarm.Globals;5 ^' f. u+ |7 [' A% X0 g
import swarm.Selector;
L- y" w- J4 P* y. Q( K* i' limport swarm.activity.ActionGroup;
4 K% u; I6 [1 [5 i Yclass Agent {
, B1 I3 ^4 i a# d, K; P I char id;) e! M; D. |. X: i: j5 Y
" Q1 {0 y6 f/ }: H' {5 Q4 } Agent(char id) {
+ x/ ?6 L0 D, h this.id = id;
) w8 C) T% K6 r }: N5 H' x5 j \) |7 ?: L
% e- C. h1 K/ S
public void agentStep() {% j# W/ t! ~5 a% l. c6 g8 l; [
System.out.println(id + ":" + Globals.env.getCurrentTime());
* m! |6 B: s" X6 h; p/ b4 i+ a }) h6 @, n4 n1 M, B
}
2 o8 \ ^) X5 K/ o9 [) f% |7 p% q, j0 ~3 Q- R; T
public class ActionGroupDemo extends SwarmImpl {5 d' g5 a* w! w& `/ E1 y
ScheduleImpl schedule;
% d0 G4 Q9 w8 L9 y% x3 h ActionGroupImpl actionGroup;. e$ Z* R1 h. Q* }/ ?
ListImpl list;
! g; N, P1 }6 V2 l char Id = 'a';
& L( ]+ E% ]3 r
$ d1 d3 ^8 B. v% O6 T- b! V ActionGroupDemo(Zone aZone) {$ @8 B, o$ C5 j/ f
super(aZone);0 d9 [/ @. t. x8 D
list = new ListImpl(aZone);
5 m4 [6 {/ l: |$ S swarmSetp();
* k" x- g) j" t7 F/ Q actionGroup = new ActionGroupImpl(aZone);
7 H9 W& _6 `1 ~) p5 _ schedule = new ScheduleImpl(aZone);* w7 \$ w9 ^% V4 H! k/ [- A
try { j0 h% p: |- ]/ q
Selector agentSel = new Selector(Agent.class, "agentStep", false);& \2 I$ u$ T6 C# w% V3 z' s- a, F2 M% H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' @1 e9 T7 {/ |3 v! c( B
( Q+ \0 ?2 d. c' T; s- O" d actionGroup.createActionForEach$message(list, agentSel);# A7 I$ z1 C. v! M/ T4 K
actionGroup.createActionTo$message(this, swarmSel);
/ g' j8 ?5 g' b3 n' ^2 ? schedule.at$createAction(0, actionGroup);; k4 Y. m8 K+ k9 H* q% T
schedule.at$createAction(1, actionGroup);1 J3 C6 E+ e4 `1 J1 Z, X
schedule.at$createAction(2, actionGroup);
3 c7 L6 \& o6 \' D8 }
+ u2 x: L! D4 a } catch (Exception e) {; @' o9 n, ?# K: V0 G( b
e.printStackTrace(System.err);
7 D: Z, K1 } V2 ]' I" I //System.out.println(e);
1 K* Q8 q2 k6 i7 ^2 L System.exit(1);
" P5 l( ?. e! j! r }
1 R1 @6 o) B- k, \# v4 q1 O2 i5 Q/ y4 r# n
! ]; w$ o! k* @7 ~1 \
}
6 Y0 v$ `, ~9 i7 C9 [9 C4 J& Y9 b; a1 a
private void swarmSetp() {) N5 D- z8 { {7 x; C% r" i* \6 m( ]
list.addLast(new Agent(Id));' l& _+ N# h( K$ o" D. k
Id++;
$ U; g6 F$ |5 X. P) C8 Q }" M: `1 w; y. o3 D8 q
, E7 C) o1 Y/ [% S1 y public Activity activateIn(Swarm context) {) _# q% |! S" v3 L: Y( Q! Y/ f0 b6 k! ?
super.activateIn(context);
& z* i M4 l% i. A4 f0 e- O! E. z schedule.activateIn(this);$ l, W' Y. _: Q
return getActivity();! a% A: ^" p! c, P1 z9 U
}: {/ K: L: D+ b& r
/ G$ ? I% v }, L! H public static void main(String[] args) {: i+ c' n4 Y6 w1 y! D b5 R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 [4 v" y8 U" D) p& u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- L( Y, W7 {7 |. _! J8 L7 _ swarms.buildObjects();
$ Y5 X2 s' }* c6 ^' m swarms.buildActions();& d) S. @4 _9 C' y+ z B
swarms.activateIn(null).run();+ X2 [& \2 I9 i0 }
}! C; S8 V+ W) b, T% n
+ V5 Q0 W5 }& m* `} |
|