|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / |* a! f* L+ S
/ I% H% Q0 l, d# D9 ~9 z& D1 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; k) l) j2 h. }, _$ c/ h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 b! j f( [# n$ Qswarm.SignatureNotFoundException
6 [0 U/ T) K$ g: f at swarm.Selector.<init>(Selector.java:76)1 A$ E3 ^3 h9 P6 T8 w
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( z8 m, J4 N. z% i
at ActionGroupDemo.main(ActionGroupDemo.java:67), J1 F( I; ^$ f, e4 L
- E( P; I# W9 D, _: r
8 N" u) k2 ?3 [import swarm.objectbase.SwarmImpl;9 T: s5 ^4 K5 T4 I! o8 A
import swarm.objectbase.Swarm;+ E6 |% D7 d2 N, Q5 A- Z
import swarm.activity.ScheduleImpl;
7 V, Y1 z; b9 \# @1 O6 ~( i& Vimport swarm.activity.Activity;
6 ?# y9 [- @# u: ]; x+ m, G0 Iimport swarm.activity.ActionGroupImpl;( [6 P m& j7 L. \- G1 B8 J$ l
import swarm.collections.ListImpl;% q" }2 ^- I' V7 G5 t
import swarm.defobj.Zone;
2 J5 @7 F5 O1 S, L1 X0 oimport swarm.Globals;+ t" [% Z6 {; J" h
import swarm.Selector;7 N U J: z; N2 S; o
import swarm.activity.ActionGroup; 9 `! i1 Y0 ~1 @9 Q$ q/ w0 L
class Agent {
" L5 D' F7 U4 u0 ^0 \) {+ y# F9 J char id;
3 `+ g5 h5 K" S7 ~, d/ `' [2 f9 d1 w; L4 b/ l1 T W' b
Agent(char id) {
- i# l6 N* C- Z& L9 s( A this.id = id;
8 R3 K& c4 H# ~6 K }
: G' {8 Y3 M; @( z, f) a. u4 {& K; i. _; Y$ C' a. E
public void agentStep() {( D5 y/ z. g9 V8 z Y5 I! x! c# L4 x
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 A: x) `+ D2 [. ~ Z# |1 { }
) ^4 I/ t4 k& ]" d5 V/ S! B4 m3 e5 P}
0 _ p! q" s! i- `; S
: c4 Q \4 C- B: G0 V G& Zpublic class ActionGroupDemo extends SwarmImpl {
& G3 D9 ~$ V$ R! d" |% p2 B ScheduleImpl schedule;
3 R9 O5 u; g* F5 n' w6 R+ f8 H3 { ActionGroupImpl actionGroup;( b, ]+ _/ B7 @+ d) M/ a: b6 _
ListImpl list;* ~1 E( I! o% x* N; f; J& q( A
char Id = 'a';0 V7 b7 k9 t, u' f2 ?; T
& T- C/ M: J3 x
ActionGroupDemo(Zone aZone) {
" `" u9 j8 _& M' i. J" { super(aZone);
* y( M9 \! R7 }( ^. D list = new ListImpl(aZone);
( D7 s) k3 Q, t3 Z- N* ~5 z swarmSetp();, T2 i3 ?* N/ o5 T: N
actionGroup = new ActionGroupImpl(aZone);* T" \; O0 a! G. U6 F3 Q
schedule = new ScheduleImpl(aZone);
5 T" _! }1 }, `8 e) Q y+ b, ]3 ] try {
: P1 d) {) J0 {) a Selector agentSel = new Selector(Agent.class, "agentStep", false); I. V1 d3 X) e- ^9 Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 }* Q- N( \1 _, N1 _
5 F! U- ?6 [" w) ~7 c actionGroup.createActionForEach$message(list, agentSel);4 ^+ v/ I! ~/ j% s, U8 [ o
actionGroup.createActionTo$message(this, swarmSel);
1 {3 P6 Y: [0 e# S8 W/ s+ Q& Q schedule.at$createAction(0, actionGroup);
' F+ h) N8 h) x# s* r% j: E schedule.at$createAction(1, actionGroup);% ]' y' ?: s7 r* i
schedule.at$createAction(2, actionGroup);
% f W' v. v% D" Z; ?2 }2 f; R( _. B
} catch (Exception e) {
5 J9 g6 d6 Y- J8 z4 f. i e.printStackTrace(System.err);
3 y5 Q o1 R: q3 w r. F6 I //System.out.println(e);
: m: P3 w- G7 [+ E3 d' X: D: v System.exit(1);' z6 Q3 U _: ?& Y
}
& [* e! t9 }. ]3 i/ b! \) ]/ Y) F
/ O2 k2 S! `6 ?" k
}
) p4 I+ p4 N6 j# {0 g. u! e7 U0 W8 w
3 P3 {6 a9 T* ?! P7 a- n: M: ~ private void swarmSetp() {
2 M' U" Q, ~9 }5 J7 G list.addLast(new Agent(Id));
! U( N+ p9 H8 E Id++;
6 u6 Y! x# y5 ~5 @0 W2 h! Y }, o: j0 f0 \6 _% O* p7 B5 O4 e
3 X1 Z9 ^5 M# ~% A
public Activity activateIn(Swarm context) {
! ~/ ?9 _& @* } o0 A; l super.activateIn(context);% A1 h6 V2 H- X8 q6 q9 g
schedule.activateIn(this);
E7 D7 m+ s7 x1 E; ^1 K return getActivity();
5 ]+ ]8 z( n, w. O1 E! u! E3 i }
1 u3 R# c) v, i e$ n) k- M& S" W) t: w* u5 v/ }
public static void main(String[] args) {
- I8 { E5 l% {' D6 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 M) {3 N* o. b: O* V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ g& g9 J/ r4 z- K
swarms.buildObjects();, s3 d- b! W3 q/ r5 O6 N: b
swarms.buildActions();+ M: X, i. I. P) Q8 {' Q. B
swarms.activateIn(null).run();. E8 h# N8 \+ s( r+ r
}
( B/ v; O* C+ l" R# {8 U" _
+ f$ m; s k7 k0 X" g} |
|