|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % i( C/ h) p& s8 A
6 Q5 H6 j2 T! s G, x u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# a( @2 t8 A% l' f8 \: t) ^" \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 H" P7 x2 v3 o4 A) G6 v
swarm.SignatureNotFoundException
. v V/ K4 j3 q0 m, R at swarm.Selector.<init>(Selector.java:76)3 P( S' l6 {) T. x3 z3 m* s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% {7 l! ]' m. e( m e at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ L @& {# _4 u3 T1 j; B" z6 v/ O: h' @+ w
, n9 w" N, x9 L0 y% _* z% \2 fimport swarm.objectbase.SwarmImpl;5 K. O" P: E% { [ `7 g
import swarm.objectbase.Swarm;
0 v& Z9 o# U% Q0 \2 M: simport swarm.activity.ScheduleImpl;
/ W$ d7 i0 F5 |- G& J- Simport swarm.activity.Activity;! s7 r) [9 |& t$ s0 |- R
import swarm.activity.ActionGroupImpl;9 D, L2 Y/ u) p% ^5 t# J
import swarm.collections.ListImpl;
& X4 }- Y% n0 x+ @2 L3 I$ ]import swarm.defobj.Zone; ) K7 ?. L+ ^ G$ h! Q h) @
import swarm.Globals;
6 ]2 t1 [2 c/ Kimport swarm.Selector;
+ ?7 k5 V3 b% F/ Aimport swarm.activity.ActionGroup; ! E0 \' u- _2 K# I- b' n. X1 m; _
class Agent {
+ Q5 S& Y6 V! [4 v$ t char id;2 r( g! f1 |2 q
. C) K. d' w7 d" `8 [$ b7 z
Agent(char id) {) ]7 g! r/ c$ m- j
this.id = id;
/ w# J; M1 V4 ]' r; W: D6 h }9 |& ~; C* [/ H- R- [
. W! G7 `0 v2 h1 w+ q public void agentStep() {
( ~1 n+ I; R6 ~6 o System.out.println(id + ":" + Globals.env.getCurrentTime());. Y6 s% `# H* r3 M l% Q6 ^
}& z% ~+ ^# g0 K9 w% t% A
}7 S8 S/ _5 Q! L) p- h
4 O" R' U9 l( s8 ~( }
public class ActionGroupDemo extends SwarmImpl {
$ Z6 ~% Y* r& x+ [% u$ h# O( p7 ` ScheduleImpl schedule;
2 L4 t0 f* r) q ActionGroupImpl actionGroup;
; d1 c# i _; C( W4 I: j6 X ListImpl list;. j/ k: V( p% L; B$ m$ Q" W0 w
char Id = 'a';( T/ w- n7 {( ]+ J
/ f$ R* G \% e: m* Y0 N9 V* p
ActionGroupDemo(Zone aZone) {
$ [' o* c0 J* \) x0 _7 s super(aZone);
' `# i+ T* u7 l# U3 p list = new ListImpl(aZone);( K3 B. h, @! Q- r% |4 A; y
swarmSetp();
0 u3 L8 T" Y; Z& }3 s' |2 |% L actionGroup = new ActionGroupImpl(aZone);
0 V7 A! Y2 e S h schedule = new ScheduleImpl(aZone);) o0 K* L2 `+ K$ t! t; P
try {
. C8 k3 ~+ I/ I4 d) N. I4 Y- ?: l Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ d- e9 G' R- |# t Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' |% L* L) l, n: s9 {4 B: Y
: g# y2 m, k, S+ I actionGroup.createActionForEach$message(list, agentSel);
' T4 u0 t& Y2 d, w1 R actionGroup.createActionTo$message(this, swarmSel);7 f/ ?$ l2 H; E& U [ J* a6 f
schedule.at$createAction(0, actionGroup);0 c+ H$ _; @# o+ g
schedule.at$createAction(1, actionGroup);
7 `/ R: v: K0 }$ b' R schedule.at$createAction(2, actionGroup);2 w) W6 n' P5 k9 K( k$ a
% [; N5 r" g$ j1 @- _0 q } catch (Exception e) {
7 @/ @. S, ^2 q+ r e.printStackTrace(System.err);
+ y9 U! E ]3 }6 K! _ P" B //System.out.println(e);/ i2 ^+ U+ ?: }- ~; Y) V: ?
System.exit(1);0 M( }. r; Z* T+ k: d5 ?4 t
}
9 o: w, N: g- H- o! D
: `: C9 |+ X7 h; e- Z3 |, S2 _0 k& j% \
}9 n# l9 D/ }3 J
7 c: K( O. F$ y8 Y private void swarmSetp() {
- d% H0 U$ p7 s/ a list.addLast(new Agent(Id)); p7 ?# }6 e9 p2 X# S3 _* i
Id++;
2 H; O D& h3 i& g }
- y! b; I' y; q- g3 \( k) v4 ^( \
d) n% b( T, z" c0 L# B public Activity activateIn(Swarm context) {
% O0 [$ E, j3 S' J) [ super.activateIn(context);
4 @3 K2 l; {. T) |7 W6 u schedule.activateIn(this);: f* F" L% e5 x0 t, s% e
return getActivity();' ~4 b5 X" q+ y6 K6 c: q8 \" q% N
}, B! ?# d/ c5 \& t8 B
3 X3 G6 C4 L; V S7 n7 M0 y% [
public static void main(String[] args) {
( Q" @8 }6 i$ [) I, b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* m5 o# S8 N" {( A# c9 w7 y" I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: l; |, E( O' A. S* c) [5 Y; g
swarms.buildObjects();
& _9 B, {, B/ q- G, D swarms.buildActions();+ d- z( q! g/ W; h/ E% Y) r8 Y
swarms.activateIn(null).run();
4 _# B4 D1 x" Z8 X2 c& ~" o }. a/ f6 k# J6 f4 K8 b8 M
/ d' u) B6 r0 {7 P) B1 g} |
|