|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 Z/ \0 Y( B6 d% ]6 u$ j. J% `- \# }& W; G8 k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% x; P! S( X3 y3 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ `# M- }6 o0 B4 H" l3 U) D! w; yswarm.SignatureNotFoundException \- t- C" |9 m9 w9 V9 E
at swarm.Selector.<init>(Selector.java:76), x$ i! E6 P" F h6 c
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 r- _5 i" c# Z- B2 D+ z2 j& n at ActionGroupDemo.main(ActionGroupDemo.java:67)
, z8 I, E# ]9 e1 D, g0 Y9 M* ^( I4 h6 J3 N, M/ t- c) c. @7 P
* Z) F5 D+ }, D2 N6 dimport swarm.objectbase.SwarmImpl;
6 y& _, g/ v% M) {2 zimport swarm.objectbase.Swarm;# m. s0 h0 ~3 v5 d: ~
import swarm.activity.ScheduleImpl;
@$ k) I$ `; iimport swarm.activity.Activity;
6 o6 `3 y3 w5 V' A4 {& V a7 Z/ f0 Oimport swarm.activity.ActionGroupImpl;
$ D( z5 ^7 o3 B( U4 aimport swarm.collections.ListImpl; A ^# \) o \% r; E0 ^8 n2 Q- c
import swarm.defobj.Zone;
% j" w# M, X2 b0 timport swarm.Globals;( g4 J; J' S, w3 ^
import swarm.Selector;
# }; z5 d* t, Zimport swarm.activity.ActionGroup; 1 p, e h4 k6 j
class Agent {* g6 B, \0 |; i7 F9 i+ E9 x
char id;
3 p( i. S* W1 |+ @6 X' J3 M/ C; r8 R" B+ ^. Y
Agent(char id) {4 G0 v$ f- }1 r' |' U
this.id = id; Z; E$ ]5 T% B
}' M1 g; W& I5 a5 k& ]
+ G( @2 K% o$ I6 I, e f
public void agentStep() {5 k: N$ v! w- u$ ?! }& _
System.out.println(id + ":" + Globals.env.getCurrentTime());
T7 t4 }$ S2 Z# O2 @' H }5 f6 Y1 ?; x3 U# u9 e' \# {
}1 z" ?0 P! T* X! E; X
0 d$ {4 `1 w1 O O0 j+ }. u6 s5 Gpublic class ActionGroupDemo extends SwarmImpl {7 {3 I0 ^' `% C; ^# _$ f4 {
ScheduleImpl schedule;
" k) g. Y; ^, w* ` ActionGroupImpl actionGroup;% N x4 o0 ^8 b7 \ c9 y" w
ListImpl list;
/ g8 j4 q$ K# e# T5 a/ ~ char Id = 'a';
: c( ?6 m6 j8 M# z9 K5 W) B: d' y
, F# ^, z" D+ H. Z0 [8 @ ActionGroupDemo(Zone aZone) {2 O' Z. ]( X+ |7 P- z) j5 ]* W/ H
super(aZone);: W. Z, o8 w- d0 q. |
list = new ListImpl(aZone);7 d6 h0 K4 E& a0 ]8 m
swarmSetp();1 W6 x1 X1 |, t7 D& e7 V
actionGroup = new ActionGroupImpl(aZone);
: {# N% R1 J( I! ?9 x$ X schedule = new ScheduleImpl(aZone);0 K# S* D5 L, ~$ E2 |; T5 t
try {
7 U& ]% N9 W6 {3 r5 V Selector agentSel = new Selector(Agent.class, "agentStep", false);9 Q0 X `/ T$ r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( `2 v3 F( a) u; ` $ p2 j' F: A1 k' P% x! h; |: W
actionGroup.createActionForEach$message(list, agentSel);
& w+ ^: u, ]+ v, s! \ actionGroup.createActionTo$message(this, swarmSel);
: c7 h- [4 S7 }2 R0 [" E' p8 ` schedule.at$createAction(0, actionGroup);
$ h3 j! X) h' K% Q# E2 N8 S schedule.at$createAction(1, actionGroup);
( w) X: ^: D& w' _ schedule.at$createAction(2, actionGroup);7 u0 P3 d0 K+ a* h" e1 {) u! |
4 g5 ~) O+ H8 P) W2 T- ? _ } catch (Exception e) {
) W) }1 S# \5 S9 b+ { e.printStackTrace(System.err);
s% c) {6 q# R, h //System.out.println(e);; C) u) }2 W# C9 E+ q3 ]% j
System.exit(1);
& `& G$ R7 [: F7 R) O0 T1 o }
+ k r- Z4 v6 _/ ~4 \3 s- R
" j2 P# y+ h: f* V8 U' z: H+ o4 B$ O5 x h
}
/ m+ [1 P6 r6 w/ ^+ b q0 w9 v4 ~; m' B4 z; |+ ~; S* o; ~+ Y% [
private void swarmSetp() {
8 F; J. {8 M; |# u list.addLast(new Agent(Id));5 f6 h- Z, @; c' ^% f, X+ B
Id++;5 d. ^2 r0 h, i. S
}1 l/ r, e" G; j0 Z) P" n
# J8 |6 J6 w( W- z6 a5 S7 x/ ~( b4 e! W public Activity activateIn(Swarm context) {
& K1 H3 ~6 @7 B2 B7 r super.activateIn(context);
b& n/ O5 e6 a; t' b8 F' D. I- s' @ schedule.activateIn(this);# Y! U! M* V- y1 K7 B3 D/ G; i
return getActivity();
& T- Y9 R z y0 S4 V }
) d: w; ^9 f0 P- [' X1 }
) Y4 j; }; F2 {7 H1 D+ } public static void main(String[] args) {4 N4 D9 u) b7 f- h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 u" d4 X6 w2 N* X Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% _, Q5 ?# a% O. R6 U, m: X4 L swarms.buildObjects();
# w# Z" M0 {+ @. o! \$ C swarms.buildActions();- c: Q0 { {" |0 V
swarms.activateIn(null).run();8 E6 B9 u: X( r6 L
}6 U; W! {; e2 X Z. s
4 N$ P- F7 w5 i/ e0 \ a} |
|