|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 j2 A$ h5 `3 z, p
7 P0 H$ y0 o) B" h# m2 E2 w- [: M3 P8 {. _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' }9 ^3 T( ~# J! N9 q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# s0 x' t* `5 W! V& e. e7 n
swarm.SignatureNotFoundException8 C$ a$ J) A# _8 k% r5 a/ M3 o9 I
at swarm.Selector.<init>(Selector.java:76); }+ i" n8 v1 u# a. h! v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 d% t6 C' H- {+ y/ P' a
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# y0 p! u) \& y t" b/ T8 j3 `$ |' R
C/ [( r+ A: O1 h
import swarm.objectbase.SwarmImpl;) I- S* s* O5 [2 z: _& H
import swarm.objectbase.Swarm;
& A C6 [! b5 b; y* `9 j F9 `import swarm.activity.ScheduleImpl;
% S6 H; L* h; m7 `" k4 s% J. Zimport swarm.activity.Activity;9 C/ g& l+ R( v% f9 {, W; \# ~
import swarm.activity.ActionGroupImpl;
2 d+ w( l. Q) D6 h, Mimport swarm.collections.ListImpl;7 B% E! u! s) R4 r9 @- }+ T
import swarm.defobj.Zone; : V/ m; }8 T' |5 r& m4 D5 c
import swarm.Globals;. O% @6 D$ V, u+ f# |0 m
import swarm.Selector;
0 V X7 v! P! V7 G c- o3 W( P$ J- Qimport swarm.activity.ActionGroup; ; I+ u+ W# v$ R4 a
class Agent {( A9 t' [* @; }$ y5 U
char id;& y1 C3 L$ ?' f
2 q7 H/ J, T! x$ C8 B. M Agent(char id) {0 |* c4 _: x' [3 s6 k6 s) }
this.id = id;# Z# B1 _: x- ?
}" j; u! |- \1 O% F" X
( m) {. _' R2 r1 v6 U# I9 m( w public void agentStep() {
) S' C8 S7 j" X6 J System.out.println(id + ":" + Globals.env.getCurrentTime());
% Y) [7 i4 O6 B7 e4 W- A }1 M( K- Q5 j( @, q0 ]6 W* n3 s" n0 k
}* p% G' \. U" u( C0 l' l
4 W9 _) N# f: E+ E9 q( C `) Wpublic class ActionGroupDemo extends SwarmImpl {$ ? R+ Q, D2 E K" U1 }4 w
ScheduleImpl schedule;
j3 O/ p# y; b9 V! Z [) S8 O ActionGroupImpl actionGroup;2 j: Z- a8 ?' Y5 z, r
ListImpl list;
$ S; v4 v, a5 H" \ char Id = 'a';: q0 X3 r6 l6 s$ E+ Y( `
3 A( Z- g6 f4 ^$ B ActionGroupDemo(Zone aZone) {' f, X4 c8 q( d/ p6 G$ L7 Z
super(aZone);
7 y# U" _/ p: S# ]! Y- ]* W4 x list = new ListImpl(aZone);
" X3 z$ O, e! E" R, {2 h' q swarmSetp(); t R: |8 x# L0 y( j$ `
actionGroup = new ActionGroupImpl(aZone);7 T3 e% A3 X. M+ f% M
schedule = new ScheduleImpl(aZone);
; Z% @) v0 y6 R; `! k$ y try {
|' h7 D. {) I9 I0 e% K5 \0 e Selector agentSel = new Selector(Agent.class, "agentStep", false);" _, x4 m5 k+ c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 N2 A8 N. z Q* O 3 j( j+ s2 ^- s8 o7 E/ y
actionGroup.createActionForEach$message(list, agentSel);
/ G$ s: u* t% n! ^0 E# M& X7 m actionGroup.createActionTo$message(this, swarmSel);
! N0 }: G: Q" h. P4 @4 G schedule.at$createAction(0, actionGroup);; E" r4 Z% A/ J; {5 u% a% W
schedule.at$createAction(1, actionGroup);
H* a/ [! R% i& Q# r% h schedule.at$createAction(2, actionGroup);
( o, \8 w3 x/ S+ T9 \) E
2 d- Q! E9 q5 H( P4 F# [4 ` } catch (Exception e) {, I5 F" q' }( N, P9 P+ f# n
e.printStackTrace(System.err);
5 _% |' Y6 x& e* e. p' ^& H //System.out.println(e);) U1 O3 Q* R" A5 |
System.exit(1);6 _, m& u1 X: }9 [% ]
}
V& a& s: e2 r
1 i) G B; R, _3 U% d# L: x
( Z, T- v9 g0 d- x/ ^0 T1 P/ Z }. j! D" `3 p( ]! l4 a, y
8 J/ Y: |. b3 r W! `0 \
private void swarmSetp() {1 W2 \9 M; n6 C5 T- J3 W
list.addLast(new Agent(Id));
5 H7 p* o' M5 W, P& @+ C! z) i Id++;
) ]0 ]( c V" [/ Z. t5 d4 q }) Y4 @, [) X% I
' L: `3 n, T2 }3 W% I1 [. Z0 x public Activity activateIn(Swarm context) {2 S7 T p" r# p
super.activateIn(context);8 f7 M* L: e6 u+ A2 U
schedule.activateIn(this);% ]' z9 f+ f* X9 W3 ~3 V$ o) N: o
return getActivity();+ V s: g& @& `: h1 U7 {, k/ \
}2 q3 T* {. x8 d2 W; y+ m
q9 e/ Z1 u! b# f f2 Z public static void main(String[] args) {) O5 X7 c c! j r: d% L9 s
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& ?6 |; l0 K. T2 i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- o+ p0 M/ Y3 Y4 Z6 K& i/ b# q8 h swarms.buildObjects();
* C- G5 ^0 x3 x# A: I- l swarms.buildActions();
& z9 X* c# S6 N swarms.activateIn(null).run();8 @% c8 {; Q0 c
}
( J9 W- |5 p# z/ B" R
( O& b3 G/ k% d} |
|