|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # w, B, K% o! G2 ~# Z9 O( l" }
# M0 [* T! P0 N" v! a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; v" s, @2 T$ C3 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 y" L, I* y6 `swarm.SignatureNotFoundException% a# [+ M' f3 J c9 W
at swarm.Selector.<init>(Selector.java:76)% _! ~# `; J% o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 z& N5 @& \( A at ActionGroupDemo.main(ActionGroupDemo.java:67)8 w8 T. g6 }7 u8 A! @- N6 O9 e
8 e. u: s. s& P6 }1 T) g j5 A8 _4 t
' g" a' H- B, i. {5 o( X) I" r8 Jimport swarm.objectbase.SwarmImpl;
: k+ I: D7 l. K0 I0 pimport swarm.objectbase.Swarm;
% J) z/ N' s$ A2 aimport swarm.activity.ScheduleImpl;1 b; _, v; e/ J, c
import swarm.activity.Activity;
0 Z' |3 x3 Z2 ^import swarm.activity.ActionGroupImpl;
4 I, X( u2 |$ M7 eimport swarm.collections.ListImpl;& ]4 k9 `* y8 p0 R) p+ g
import swarm.defobj.Zone;
# m" `% l- H4 M M5 n. Fimport swarm.Globals;
4 C. K+ g* [! [ p5 }! kimport swarm.Selector;* {& A8 {8 B6 \9 i# \. h9 R
import swarm.activity.ActionGroup; ! G% v8 R/ K0 _0 X/ u( K
class Agent {
d1 K: b3 j: j8 p& C9 T7 }# n char id;
4 v4 t2 J# e: d4 s" m I
( l. o/ m; _: K ?% n: { Agent(char id) {% b- p( o6 m2 i9 ^
this.id = id;
5 C- O! \4 K+ y5 K }
/ U/ Y4 p3 T* _. {5 y5 A6 g, Y: r: s5 \+ S k) ~
public void agentStep() {# t4 z+ ~+ N2 W- q ~ @
System.out.println(id + ":" + Globals.env.getCurrentTime());' L: Z$ }% L; k6 w& I% R
}
$ A S$ y; f3 x& Y# f- _}, [) T% b* w* n( P
" [) d9 z% `$ tpublic class ActionGroupDemo extends SwarmImpl {
4 j' ]. E, b, c+ {3 q! } ScheduleImpl schedule;' c1 R o3 A& N: Z+ e1 c6 n V
ActionGroupImpl actionGroup;8 N. [- q; p/ y; P; i
ListImpl list;
. C- \+ E" [' d char Id = 'a';& @0 \2 W4 T x! f N
; K7 g& D" |$ W4 T
ActionGroupDemo(Zone aZone) {8 Z0 n" f% S W9 b% H' R
super(aZone);
; _9 N4 I/ o3 g' p8 N list = new ListImpl(aZone);+ J5 v I) T7 N; u9 z% E7 W
swarmSetp();4 _# F/ r0 l! l4 J- P2 c
actionGroup = new ActionGroupImpl(aZone);8 R2 N$ B4 b' }; O
schedule = new ScheduleImpl(aZone);. `- p9 t0 Z- H$ V
try {% T& \! u" U( x3 D; x
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ {& D4 _. n, |* n; d
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& Y+ m# F; y7 A, t& L. b) F
: d8 R: K$ v) x. o
actionGroup.createActionForEach$message(list, agentSel);, l+ Z, m" B8 N, J3 Z3 P
actionGroup.createActionTo$message(this, swarmSel);
. T$ X: ^: z' a' u' X( e+ [* D schedule.at$createAction(0, actionGroup);( `$ g7 H1 T7 j
schedule.at$createAction(1, actionGroup);( u8 x) M ?& ~. h1 R8 c, u
schedule.at$createAction(2, actionGroup);
4 i4 Q5 z* M3 o k. H/ i. z/ p+ F) q5 ]
! ]& w' M- _5 U# Y+ n, b, {# w; y } catch (Exception e) {7 I# A) m- b3 a
e.printStackTrace(System.err);0 `# ~ A7 A! X% u$ P3 p1 k
//System.out.println(e);: c6 A! f1 p+ G' g& C
System.exit(1);
& h9 t8 p+ _+ S }+ e- T5 G$ B: r/ E1 a
* U3 a m2 I- [) v. h
. {* x/ c/ E4 S$ C9 ^4 F* v4 @ }5 q& j( a7 ^$ Y
4 O4 R' r' F6 W5 n
private void swarmSetp() {& E; Z/ n7 v; [2 W. d) K
list.addLast(new Agent(Id));8 V6 b, p( N7 c5 [7 L
Id++;
* @4 h# F$ v8 G6 m }
3 X/ V8 ^3 j, {+ V9 i' |! R, D8 J% O- {
public Activity activateIn(Swarm context) {
R# t4 j- U* \( ?3 \3 U super.activateIn(context);3 L/ F, K! }9 W' E
schedule.activateIn(this);
& {9 b: T. a L+ h/ y; v2 s return getActivity();
6 l0 d7 D8 _$ Z8 D }# ]2 e+ B) |5 r' g5 T" ?% H
* K7 D* H R3 {$ c# Z+ S6 ~ public static void main(String[] args) {8 s0 J3 ^% j% s- O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 ?5 v* L; x- D1 w" F" K# q: V9 |7 t
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 g5 ^ A0 P! M X swarms.buildObjects();. [& a- t9 _$ V$ A0 G% L
swarms.buildActions();6 A' W( Y4 ?! v8 I$ O
swarms.activateIn(null).run();
8 e1 M { M G# \ V) f& F: S: N9 a }/ s/ a& E4 E4 L) J# o
0 O$ r; Y. ^! s# t" z. R* Q} |
|