|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) a$ u1 q/ ~1 N) U; b0 S2 t( E. G1 ]! H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! d0 Z# r4 m" ~& D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
H$ o/ f# W" aswarm.SignatureNotFoundException. K1 B; e; J( r$ c% F0 U% _; N
at swarm.Selector.<init>(Selector.java:76)& [8 |& T$ A% U, j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: k: B7 X2 N. `: G0 ~ at ActionGroupDemo.main(ActionGroupDemo.java:67)8 T: x2 n5 @8 I& [3 p- n9 J
. I z3 L) M! O# P
9 l Z Q: V' Y" C, k3 t5 c5 Dimport swarm.objectbase.SwarmImpl;
' x# l. f% r6 Q* i$ r( F% Y+ Mimport swarm.objectbase.Swarm;% J4 | b* t0 v* g. S. f
import swarm.activity.ScheduleImpl;
% Q2 s# Q0 B2 C6 Q4 s" f: yimport swarm.activity.Activity;
$ @) G5 ^% \- J2 W2 M8 mimport swarm.activity.ActionGroupImpl;
: u2 P @0 J, E( fimport swarm.collections.ListImpl; o; `- H. U7 [+ Q- Q O
import swarm.defobj.Zone; 5 L0 p5 } B! n: ]" `
import swarm.Globals;
0 h; c# c% V O mimport swarm.Selector;
, T8 O( U9 p }' b1 r) M4 p! vimport swarm.activity.ActionGroup;
+ J, E' v* W! O, Sclass Agent {. B6 c8 P) k+ a$ l9 y: ~
char id;
E& J$ h( O% p1 P4 Q2 w! D3 k8 i* i! F8 v+ `1 L
Agent(char id) {
& h; X' s" L7 y# A* V this.id = id;
/ F q2 Z$ W5 E$ [/ _, G6 {4 e' q }
; n6 @. l( Y6 B8 [5 K* T" {! ]6 [3 m
public void agentStep() {
6 v5 F6 j2 D3 t* ~ System.out.println(id + ":" + Globals.env.getCurrentTime());0 d4 { R1 P/ Q$ }9 k. _' m( v
}
5 s/ P1 v# A9 k" `}4 X+ e; l7 w' j/ ?4 D- e; B' @
& l9 v8 q4 S4 m" Jpublic class ActionGroupDemo extends SwarmImpl {
% i3 G3 b) A( B! h7 {2 t ScheduleImpl schedule;
$ ?. B4 ~7 g! X9 R. @4 |+ k' w: S ActionGroupImpl actionGroup;
) c1 b( J7 x. z) M3 P! w ListImpl list;
+ I& N E4 [! N* |1 w( N char Id = 'a';6 M4 P( @, D7 {8 z; H$ |
) ~0 {& J& ]# A; l E ActionGroupDemo(Zone aZone) {! O' [6 Y$ _+ ?% S+ P' `
super(aZone);& f$ G b4 x% T- h; D7 V6 g
list = new ListImpl(aZone);7 e3 Y$ O* N$ j g2 e
swarmSetp();
& G! ^) f8 ^2 s actionGroup = new ActionGroupImpl(aZone);9 ^, g" X* t( |& \; s0 Z
schedule = new ScheduleImpl(aZone);# H" w% q/ K/ X- H
try {& x. y7 S8 {% |
Selector agentSel = new Selector(Agent.class, "agentStep", false);
, F' Q5 S5 B) C) D; M Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% a& k& Y( j. g$ b/ _# P& }
7 \ {( K* z; a: y9 Z9 @- I6 j actionGroup.createActionForEach$message(list, agentSel);
, ] L( U" K, [9 h3 M+ E actionGroup.createActionTo$message(this, swarmSel);: B2 P% D5 j- |( S. y k: @8 ~
schedule.at$createAction(0, actionGroup);& t! X, @7 c$ W
schedule.at$createAction(1, actionGroup);3 e; l1 {2 R7 q4 { n# d4 J
schedule.at$createAction(2, actionGroup);. V5 G& b2 z% A) ?5 C* V
" g# D, U/ B( T9 q* i
} catch (Exception e) {+ I3 H' W. t+ g" R6 N
e.printStackTrace(System.err);2 F; B T o% E: W U9 ^( t
//System.out.println(e);4 _1 S( @; n6 Y9 z3 F4 m% O7 t
System.exit(1);
5 i, }! H# W2 [ }
' R6 u: t3 K6 r: Q& v$ v V" u+ E: r5 z9 T1 p0 c: W& C- }9 W
* A- n y6 [' J
}
: Y4 K- P$ [+ X! O/ E. L
+ T* W. X5 D, z private void swarmSetp() {
8 b1 e( r! d+ ~; b list.addLast(new Agent(Id));8 P. U5 d9 J9 r( G9 R/ e
Id++;
5 Y+ j' @/ [* N4 L }) R3 g: Y+ A3 b+ s
% h9 u6 K! z) V& L public Activity activateIn(Swarm context) {
! c3 p: ?' w: {: E4 N super.activateIn(context);6 {4 \3 N0 |$ N$ ^. ^$ N4 T' E! }
schedule.activateIn(this);* V# ~+ h6 `3 ?& i: L
return getActivity();
* f$ ]0 c! l; B7 E* `: ?$ u }
& D5 `7 p; Z+ F1 u: q
4 W8 x/ _+ j- F4 ^, Y public static void main(String[] args) {
5 ]2 G# |3 m- h. g8 a9 A# {! L Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" E& k7 T% J" B2 u6 B, @, d
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 B, J7 S/ n/ Y/ ?! R% m0 ? swarms.buildObjects();
) M3 z4 \( z4 C" M5 n swarms.buildActions();% \! X0 ~0 `1 p& F
swarms.activateIn(null).run();% z* K ^1 Z/ I
}1 D' T$ s6 {$ H2 E+ Y/ I& ?
: g& t6 W; B- M& Z8 v+ D
} |
|