|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # h' _3 K4 J5 T: B+ L; ~5 O+ C7 n
( i3 f+ _. n5 {/ E- E6 _7 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 ?% y$ ^3 \7 ?0 r) {$ [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 z5 `5 y. I% `2 C" e
swarm.SignatureNotFoundException
+ Z0 `3 h, }/ c/ M5 W at swarm.Selector.<init>(Selector.java:76), e0 V9 j9 G: P! D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: F4 z# ~ K5 { at ActionGroupDemo.main(ActionGroupDemo.java:67)
C) t9 E/ c& J1 g& L3 w; d8 ^& _# ^; |3 l9 _2 f: V' f
2 ?& Y1 n+ g3 j1 s7 Y
import swarm.objectbase.SwarmImpl;
/ c7 r ~! g; f: {4 }, v1 P: bimport swarm.objectbase.Swarm;6 }' r# y3 u7 A: c" u" U3 p% W0 ]4 }
import swarm.activity.ScheduleImpl;8 p3 F% \6 X( B- a( R$ s0 K J( K
import swarm.activity.Activity;
5 o3 {' e8 d, m* a$ ]import swarm.activity.ActionGroupImpl;
1 D# A8 m5 G" ]" m, {* kimport swarm.collections.ListImpl;, G3 l2 X" L& Q; h, a/ F( ^
import swarm.defobj.Zone; # B, s! e2 A1 o, D
import swarm.Globals;, U, m9 C) l1 o, B! X
import swarm.Selector;! `5 e) d8 l3 m# p! j7 U4 O% K
import swarm.activity.ActionGroup; , ?& k/ x8 Q8 ^2 L0 {
class Agent {
# D. M0 A, _- T1 U" H7 Z; d; C$ ` char id;
' l% S2 y+ q Q# {0 q; X$ [- w3 ?
" l' J. W1 [$ d4 d+ Z6 e* X# g Agent(char id) {; e5 ^5 @- v* |. P! b# i
this.id = id;+ J/ S2 `2 I* M1 X0 h5 B
}
! S# H- `) Y0 x f/ N. c- @; x7 n" N* U9 M' Z/ \5 D+ U+ h7 U! P& z- r
public void agentStep() {0 j$ [9 c# c! r$ ~7 r
System.out.println(id + ":" + Globals.env.getCurrentTime());7 c$ a4 V* ?* J& f' I5 ~, u+ B
}" _( s6 d3 d# t5 S' J
}8 u: x7 _8 |0 L( Y2 m. t
1 a( e: Q W! P' T* A hpublic class ActionGroupDemo extends SwarmImpl {
0 R5 H7 }' d. {( W4 w ScheduleImpl schedule;3 g# f A5 V5 y, J7 G2 ~ C
ActionGroupImpl actionGroup;
) m- u# ]- Y; L! ~, m* t: w ListImpl list;: b# s% d, u" _7 [1 E9 @' t
char Id = 'a';
- b3 s, I& |" f8 v
/ X; f( ~0 m/ b, T ActionGroupDemo(Zone aZone) {7 A1 c& T1 E! @' z: t, k
super(aZone);
& `7 m& Y9 O4 I' ? list = new ListImpl(aZone);
j: {9 ~- W4 @3 E8 v swarmSetp();1 r$ ] ]" R' z. h. Q
actionGroup = new ActionGroupImpl(aZone);
J1 k& |9 Y% D" F. T9 x* w schedule = new ScheduleImpl(aZone);# T& L* l$ h& r/ d8 r( f" {
try {% L7 ` t5 e0 X4 \0 Y) `
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 L) n4 z) u& Q0 N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 c4 s1 h& x" K/ R8 V: L4 C
% e0 @' f, n- p0 C: c' H actionGroup.createActionForEach$message(list, agentSel);) N2 [' K- x- }+ |* W1 I8 ~8 A
actionGroup.createActionTo$message(this, swarmSel);2 r% o/ y: N2 k9 D' D9 R" R+ z$ }
schedule.at$createAction(0, actionGroup);
: H! Y# I k' N8 l, F! B0 b2 w schedule.at$createAction(1, actionGroup);
! e4 `5 y/ e& ^# D4 d$ e schedule.at$createAction(2, actionGroup);* O9 @$ x# r/ ~# ?
$ l! u9 u) {9 ]; Y } catch (Exception e) {' w" A$ T; S; }. k3 d
e.printStackTrace(System.err);1 z3 v) y& v+ i, {( v
//System.out.println(e);! J3 l% z, j) F$ R
System.exit(1);
2 j/ q$ a' m# y% m! p$ U }! `$ y& Z. b I1 v3 ?
3 H1 C S F2 Q9 l' V& R4 k$ B9 \) [; W* O$ r o& d7 X/ b7 _
}
5 v/ D( a! {. ~& s/ Q4 }) E* A: ?5 }( _# t I/ T
private void swarmSetp() {
$ @+ E3 [; U [) P list.addLast(new Agent(Id));, n+ |' p- K9 G
Id++;
: ^, F% R( j; x$ B4 R3 t. K. J+ P }
G# x7 W, d: }& p: v/ F" V! Y3 \& u4 }. K6 G: r1 r' b
public Activity activateIn(Swarm context) {; H, x9 P0 P3 b" S; s0 Z" k- n3 V4 h
super.activateIn(context);
9 a3 r- y- r' T/ r schedule.activateIn(this);) G9 I' f8 Y- ?: P$ C* P
return getActivity();
2 `% }* P' `& d3 K9 k5 h& f0 P }
/ w2 {) H; U5 v0 v$ _/ Q5 w
9 d, }" x. D( Q5 b( H; o$ B4 R public static void main(String[] args) {$ ?; q! S9 H/ {/ J/ ^
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ U9 V& W) ]# w3 f* i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 }( T6 C0 t6 [/ t' G
swarms.buildObjects();
2 ?% m9 J* ]4 ~, V swarms.buildActions();* x0 j3 \" R5 x4 o+ ]+ c% l% v l
swarms.activateIn(null).run();9 k9 U/ c1 N9 C* T: g% c% u
}; s* t' l: k5 o& G2 V1 E
/ j: l: V. \& E$ z
} |
|