|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 S6 g9 S, }3 n: z% Z% E
; j E2 A/ G# x+ m, F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& c# a5 P. B/ I. B4 f! z* D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) \5 Y- o, e3 w% q- X
swarm.SignatureNotFoundException {# G+ W. u) A8 z- D/ g
at swarm.Selector.<init>(Selector.java:76)
U# M3 V [2 y; Y' l% o at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( p& m- g4 M( v) @# L2 L
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 d- X! {% H5 o! p, c3 j/ M
- u% h- i0 x3 s
0 G4 K! z8 o* J+ P/ K, [import swarm.objectbase.SwarmImpl;
* Y1 G- \ v/ @- |' W1 c' k- H4 k% aimport swarm.objectbase.Swarm;( U2 `) R. w+ a8 S3 \4 r. O
import swarm.activity.ScheduleImpl;
. a0 W# g6 F& _2 b( simport swarm.activity.Activity;
/ W+ M7 o& N+ o+ g1 J/ h' \+ h* m$ `import swarm.activity.ActionGroupImpl;5 E i8 b) `. m) D, W6 ^: B1 `
import swarm.collections.ListImpl;
& q V1 H' b( ?+ p5 ~* d Aimport swarm.defobj.Zone;
! }- ]% V4 x- z* P' a/ `! Pimport swarm.Globals; E/ N0 R; \+ G2 S
import swarm.Selector;
" l. T+ O9 G+ p4 l7 kimport swarm.activity.ActionGroup; ! B6 X% w6 @) H$ p3 K1 N
class Agent {# J% j# w4 e3 A7 K1 V: h8 \
char id;
, U( [1 ~/ f4 T, f( q
, ^) f/ T4 @( p9 `. c* s Agent(char id) {8 w L. p. j9 _# [+ g
this.id = id;
) i+ n1 _9 U; o% r# Q9 I }
- M- H, S L3 v- ~0 D# a; U% j$ v( u$ I6 F1 E" M9 F
public void agentStep() {- R. e7 L( n) L% R
System.out.println(id + ":" + Globals.env.getCurrentTime());. W: L+ ^8 J9 w$ d/ \) L2 x7 W
}
# v- o/ y+ X+ z}4 Z9 j- o4 n# `: @
% Y# C# [6 w% m9 t; D
public class ActionGroupDemo extends SwarmImpl {( O6 _8 f ]4 M4 n" B/ X$ P1 p
ScheduleImpl schedule;
2 C8 ?. v4 V6 V4 o, v; k. T1 Q4 R ActionGroupImpl actionGroup;
, T9 e/ e) ^8 d" u2 X ListImpl list;
8 k( u* a# Z! m+ G& q8 K9 ` d char Id = 'a';
7 n3 ]) g- R% P7 C% \
4 l1 h: B2 H7 c4 `% a% h ActionGroupDemo(Zone aZone) {+ H; e( T/ f: Q0 S/ f
super(aZone);7 u8 u# G3 c1 O7 F4 M
list = new ListImpl(aZone);' p1 r4 I' n/ U9 J
swarmSetp();
+ y' E+ Y2 u4 e" h# G; U actionGroup = new ActionGroupImpl(aZone);) W' S9 X7 L7 a2 A9 `
schedule = new ScheduleImpl(aZone);; \ w# S" z, s$ ?2 Q
try {
8 i$ @7 K$ d' T5 ~8 f. h# ^; Y Selector agentSel = new Selector(Agent.class, "agentStep", false);/ j1 r# ~/ P, M5 I& ~% Z, u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 W W' K( ]0 P% F * L- G c# L! ?3 o; t& ]0 [
actionGroup.createActionForEach$message(list, agentSel);
. A* S" n, X5 r K actionGroup.createActionTo$message(this, swarmSel);; P) D6 L# m$ B% d/ y8 c
schedule.at$createAction(0, actionGroup);6 [& x# P( n) w
schedule.at$createAction(1, actionGroup);
/ \- i! h7 j+ D( d5 ] schedule.at$createAction(2, actionGroup);
& y7 {# |1 T; `9 A# M( C. a+ a2 n
8 v1 p) A" [2 \ } catch (Exception e) {' a5 P. a* u3 L1 Y9 ]3 O
e.printStackTrace(System.err);7 A0 b0 M- g7 E5 B: S4 i6 x
//System.out.println(e);
/ r+ ^8 V, a* l System.exit(1);
% `: H2 H' Y: W7 X. [) ] }+ i& |, s6 O) e) p
, u7 c3 v& Y k* r
1 E6 C- [4 @5 L& A5 J0 S
}
2 X0 A! C. \, `( ]6 o
/ V6 B3 d4 B& n m private void swarmSetp() {
/ _2 e6 x6 V* v* Y J/ B# _. d4 t list.addLast(new Agent(Id));
Y e: M4 p3 D4 ]7 } Id++;+ i! n5 Y# h8 v* J% Q/ ]
}
# @* U z. s4 S. ]" s$ @
( U' |) q5 N2 d6 G public Activity activateIn(Swarm context) {
% T0 Y- E3 q1 A! q& t4 ?) H5 Q super.activateIn(context); Q" O, L' A+ u1 v9 I- @ U+ v
schedule.activateIn(this);
" s* v: D1 X0 J3 I& L: P; Z( t5 _ return getActivity();
' m' _9 c' \5 Z* `) r! z9 t }
7 x8 o6 ^8 z6 T% M! Q6 N* F# \' |, a; X; Y1 z9 T$ }% |
public static void main(String[] args) {5 W4 E- `4 ?) X D2 L2 Y l5 H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; Z- S/ \* g8 p8 a$ {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 E1 s: W% _" }# B5 L swarms.buildObjects();3 B2 _# n* c3 g
swarms.buildActions();7 R% k5 I4 r* }+ ]7 b" U
swarms.activateIn(null).run();$ R8 D6 o; G1 U) f
}' K4 d3 u6 }2 |% N# V+ Q
`+ v. V4 x- R: n
} |
|