|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + G( J% K! N' V: M& m- L
8 y3 u# W- ^6 c/ A( A" M5 V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# o. q0 M% C" H( x& @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
z) ?8 Y$ i! g8 Vswarm.SignatureNotFoundException: z8 U2 |8 p' h9 B. O
at swarm.Selector.<init>(Selector.java:76) u& m% I9 N- e- z) u: m) e# ~$ z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; k# q" `6 v4 i' ]' p at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 d: s) y" I. e4 O, Z
! Z# z+ t- E* f, o* o' A( ?, e& y4 p5 b/ Z, ?
import swarm.objectbase.SwarmImpl;' u. |. t0 s# W" \3 X7 k5 I
import swarm.objectbase.Swarm;
7 r4 y& v( X& N5 |' eimport swarm.activity.ScheduleImpl; @. w: ~* Q- e$ h2 q
import swarm.activity.Activity;
5 H, N$ j$ B+ b* Uimport swarm.activity.ActionGroupImpl;/ M/ r. J- v3 F/ r6 m0 P' q: a1 ^7 _
import swarm.collections.ListImpl;
2 _2 [9 ]4 n! \, }- `import swarm.defobj.Zone; 5 { E% i- ?) q9 y& f% `
import swarm.Globals;1 _( ?, |+ u$ M, z7 u8 p8 W
import swarm.Selector;
! z a7 @- W, c1 H" G5 k# |import swarm.activity.ActionGroup; # R* i! k& Q! w: t! r; s! J) m: t
class Agent {7 F1 a3 V+ Q4 G" v( J" Y0 z7 A
char id;4 S' r4 a3 u! w& f6 p/ p8 D( ?
! v$ W6 i% K$ Q3 p' W" R Agent(char id) {: V, k6 J1 q: x4 s- y
this.id = id;% @ y% ?( w& X. h0 I
}
0 B) P J2 W3 c7 ?" z
8 H& W+ g+ M+ E6 S public void agentStep() {3 Y) I5 Y4 f7 Y8 \
System.out.println(id + ":" + Globals.env.getCurrentTime());/ {1 q7 `" R: P& l! v4 P
}
. v6 r5 `+ n$ c5 H. D+ Y$ j}
( y! Y3 S4 @/ k9 s. m( z& R# w. j/ A
public class ActionGroupDemo extends SwarmImpl {
# |! e* z+ e3 R# l6 R( _3 i ScheduleImpl schedule;
' m8 E6 Z7 _' ?1 b* L* u ActionGroupImpl actionGroup;
9 I8 n* K$ o$ n3 s- n% \; t2 [1 ? ListImpl list;
: f0 N! Z0 K" T' _( K$ X char Id = 'a';. l7 W" h% l* j* E$ h+ u/ |2 S- S
5 h5 {. U- R$ r, I% L0 v4 h. R ActionGroupDemo(Zone aZone) {
% S- D2 E" X9 n% u super(aZone);" H- a7 [0 S* W& b' }( j
list = new ListImpl(aZone);
9 A& w$ `) g) T: ]0 U" a% ^. h swarmSetp();
8 `# l: w& o1 \' L actionGroup = new ActionGroupImpl(aZone);
( i& k) j! [: V6 V! H schedule = new ScheduleImpl(aZone);
: i% J! o7 j% |+ i+ Z% Q try {
* M$ \5 L5 R1 e4 h% @( h Selector agentSel = new Selector(Agent.class, "agentStep", false);3 K( B5 r8 r# G$ S! A& w6 X2 _ Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
i" K. b) J8 Y
7 J1 u3 M2 y" X actionGroup.createActionForEach$message(list, agentSel);1 | v6 O1 \; c
actionGroup.createActionTo$message(this, swarmSel);
6 i/ Q3 `! H- ^+ q# `1 @ schedule.at$createAction(0, actionGroup);
% W# X5 ?, f$ \$ X: H6 _ schedule.at$createAction(1, actionGroup);0 x, v! A4 U2 @0 U, u, {; O& _
schedule.at$createAction(2, actionGroup);. j/ e& F! X; Q& c. @3 [2 T+ a
7 S8 J, C+ ^! `$ p/ y
} catch (Exception e) {' W. u6 t; G+ V# C/ H
e.printStackTrace(System.err);7 ?: i5 |8 z+ d4 l' @; u
//System.out.println(e);7 I* j! e; @. T A' p. U" \; ^( H
System.exit(1);) i) ~( H( v$ n" e: J& V$ w
}
: E: I7 ?8 r& v1 C; g: S9 |& W J( m5 D% k7 g
; M* s/ Y! L! r! ~
}+ g& B4 o( l& a: \9 p
+ z i; t2 L& Y7 i. K; ?! N& l$ u private void swarmSetp() {0 z5 n& B+ Q: ?6 Q0 P
list.addLast(new Agent(Id));) f: ^& O4 J- H% a3 n) c9 K& o
Id++;. G, C X) A' F2 o
}
; O" |% v. r1 W# I& \) s6 K: D; a% Q7 c$ V2 V7 U
public Activity activateIn(Swarm context) {
; v+ B# c+ x$ U# c9 j' q6 A super.activateIn(context);
* f; D* z+ f$ D schedule.activateIn(this);8 P6 b7 ~, V8 Y6 ?9 W
return getActivity();) v; a l- b# M- D9 o& K& S
}
, l/ o4 `7 B ]6 J L
/ A2 o" M9 m+ \; U public static void main(String[] args) {
, D; P9 z7 i: M2 o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 m( @) O( f8 a/ R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 Y# a3 \9 R2 u& i0 p `! W swarms.buildObjects();
, B9 A% r6 S) T8 _ swarms.buildActions();3 _' x; Q; q7 r
swarms.activateIn(null).run();" y3 y. a4 J0 Y7 p" B
}. C& R4 N$ R7 v+ [/ B
% |& D; V! ]+ }$ u4 t' N} |
|