|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & z" {& W2 Q' I4 k4 _
# d1 Y) J: }$ j ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ p4 D9 z7 R4 M! b. t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ {# i) q1 |0 N' P
swarm.SignatureNotFoundException. y$ F H* t7 w
at swarm.Selector.<init>(Selector.java:76) x4 l! F/ k4 j) y6 F- U0 m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 m5 n' d$ q$ q8 a% Y5 [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
* d8 V; Q- C; b% r* ^2 O, t$ d/ F$ d
( K' Q0 L) l% B& l+ w
import swarm.objectbase.SwarmImpl;
2 O- `+ N6 u, P, i- x1 [ t3 zimport swarm.objectbase.Swarm;2 {" Y! W3 f5 \2 ~
import swarm.activity.ScheduleImpl;
' e) E0 s8 X& z" i+ mimport swarm.activity.Activity;6 Z( i0 y. I' J
import swarm.activity.ActionGroupImpl;
7 W- U9 r8 c3 simport swarm.collections.ListImpl;
9 U4 O: s6 j# j8 timport swarm.defobj.Zone; " a( i: ^2 I, X3 E F1 a. f; c
import swarm.Globals;# ?+ B. W* u0 E* l
import swarm.Selector;
- h: h9 x' S2 V! V/ x* [import swarm.activity.ActionGroup; " j3 r. d2 s' f# H- k
class Agent {
) D" }6 r& \9 A& J char id;# Z s/ f# Q3 }7 W, _" E* j7 U
4 u; J7 ~- \* x' I3 U Agent(char id) {. c' T; Z5 K( H; }8 b
this.id = id;: p8 h+ u6 |! D' L, |! y9 w
}
7 v; r8 z: Z8 E- X
. z q# m3 K5 D' G$ {/ _) j) W public void agentStep() {
# ~- l3 l# H: n1 v System.out.println(id + ":" + Globals.env.getCurrentTime());8 Q+ R* ~# f1 [' y! |/ U3 t1 G( ~
}1 y/ ]3 }; I% a2 K: _: G
}8 F8 V. m z* L" O3 l8 f3 K
# A$ }# r; g0 k% a" o% t- a8 Epublic class ActionGroupDemo extends SwarmImpl {+ ?0 G2 E1 O0 c. p) u
ScheduleImpl schedule;# V- w$ G L6 }: I* _5 L
ActionGroupImpl actionGroup;2 C4 Z6 j, p) b7 M# `/ ?8 X4 {
ListImpl list;& a7 S# |! T; o" @% v
char Id = 'a';
: p" m6 a/ h2 y! Y: u" H2 t0 {: V& J# }, P1 {6 f; e+ H8 J
ActionGroupDemo(Zone aZone) {6 S% v3 ^3 X8 N. o1 u" A
super(aZone);
" G. f1 k4 r; H! ~; Y' z8 t list = new ListImpl(aZone);
$ l3 H4 P: d) E swarmSetp();
; X: H" x( l8 _3 O. C, j P actionGroup = new ActionGroupImpl(aZone); u' |1 H+ i) O0 h$ F
schedule = new ScheduleImpl(aZone);4 i$ t9 A$ Z/ S7 q: Z
try {
7 b w8 R* y" d Selector agentSel = new Selector(Agent.class, "agentStep", false);0 x4 s2 a) C1 Z7 v1 E2 d. e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 @7 f L# v8 h/ K5 B
( ]- ^$ I$ d" O7 V1 L actionGroup.createActionForEach$message(list, agentSel);
. Q" X, J0 a" Y" }" j5 X actionGroup.createActionTo$message(this, swarmSel);
- ]; Z( Q7 f4 z7 y5 P. G schedule.at$createAction(0, actionGroup);
5 |8 @2 k6 c9 }0 | schedule.at$createAction(1, actionGroup);( f7 a& G3 F4 ]! U# h
schedule.at$createAction(2, actionGroup); d9 f/ K" R, E) S& k1 [6 s9 P7 v% J
. B" O0 E! U7 M
} catch (Exception e) {
& b# {; H: h) ^( Q2 L8 A e.printStackTrace(System.err);$ h& C+ n' o. A8 Z8 G# V" [( X/ E
//System.out.println(e);
# J8 m- ]! e/ L$ I, O e9 W System.exit(1);8 P) G" R5 \/ J7 `
}, U5 j( a6 \$ d8 \- f
; ]. r6 o- W4 N+ |7 |
. F& Q( k6 _+ K: N2 {; D0 g }; U" \ }5 i- K* C
; J& i3 T! a( k) C! M9 a0 `* [" j$ o9 i$ G
private void swarmSetp() {
9 I' |7 P- J, A list.addLast(new Agent(Id));8 y% O1 L. ]! j, s8 z
Id++;
# D2 H& ?7 y9 G6 d }
# }( q9 O6 M6 v6 K- l- \2 D
) u# v0 x _( h) X public Activity activateIn(Swarm context) {
+ @ }9 a$ A6 @; e, z super.activateIn(context);
( E# [: S7 Q2 S7 Y9 G schedule.activateIn(this);( k- o2 H$ h: z2 K: J4 B2 ^$ O, q! U7 Q
return getActivity();+ p# R3 @0 N+ U0 ~" z. N
}% H$ P% y9 K# X- \4 j
0 q+ w+ p1 P6 l* r3 K public static void main(String[] args) {0 A; M4 [) a9 B$ @9 N9 K' F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ l* W* A' K3 D2 h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 b3 g4 i- E% K5 S# P* g swarms.buildObjects();8 C1 u! L1 G3 M4 ?. J
swarms.buildActions();* E7 n( c q# x& y
swarms.activateIn(null).run();( D5 x% d7 u% \5 n: D) ~3 j5 |
}" F( A7 O2 D$ T0 q
% M/ U* ]5 _9 {- u! ~7 M} |
|