|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
r" f- n5 V+ \) D. N& h
9 P1 S* `3 ]' ?1 n0 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& r7 j. W7 ^1 D7 }, n& R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; N" ?2 P7 t3 M: c4 F$ Q
swarm.SignatureNotFoundException6 L8 }0 u8 ?) ]# d; V# \
at swarm.Selector.<init>(Selector.java:76)+ X- O2 P7 R6 E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 m, i# l1 e. e* x8 x" w5 p9 h" I
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ a' @# Z3 s2 X% J1 @) j5 D( b7 e& }$ s% z4 A
1 x6 X9 s" E" e- c+ D3 r$ ?
import swarm.objectbase.SwarmImpl;
8 y1 E9 D; Z, h5 E: R* D9 D s$ Rimport swarm.objectbase.Swarm;
/ Y2 W1 C% _0 P& x4 z9 |. @+ E6 B' eimport swarm.activity.ScheduleImpl;
8 E8 o) `8 t! fimport swarm.activity.Activity;
& F1 d# A) G1 _, k# {: U5 t7 Q9 |import swarm.activity.ActionGroupImpl;+ E* m+ }; \6 U v# Q6 i
import swarm.collections.ListImpl;6 {3 K. x" x, e& P1 N0 k' P' P! |/ u
import swarm.defobj.Zone;
8 c8 m9 K# m6 Z! i# X2 j* j8 ~/ aimport swarm.Globals;
" @# B4 `3 P" N4 k% o' qimport swarm.Selector;
& o3 @# h7 d8 V* X9 `import swarm.activity.ActionGroup;
+ C8 k; R: c8 P6 _7 N: j5 `" w sclass Agent {
7 `! ?# E; w$ {6 l: @$ F/ A8 n char id;
: k7 _' q5 f' g$ e+ K
. V) s3 \* R1 _* y; A4 O4 y Agent(char id) {& R/ E/ {0 s- ^
this.id = id;( E/ @0 P3 z' p- Q' Y( X+ u
}
% t! z7 F, ]8 l# b6 C1 c- I3 `$ K% L( I/ g* m
public void agentStep() {8 c. D& P4 B) d3 h: q" {
System.out.println(id + ":" + Globals.env.getCurrentTime());
" f' k- n& t ~( _3 H" s }7 J% S4 V4 G. e7 i5 e+ l: \7 r) k
}
6 J8 ^( P" v, K# [" c( D7 }, n
5 @ v( s+ |; I) I+ \public class ActionGroupDemo extends SwarmImpl {% G; S2 y% t# d; Q4 B+ i
ScheduleImpl schedule;
) v& [/ g% R3 r" a ActionGroupImpl actionGroup;' {6 W K$ T1 L) W/ t
ListImpl list;
( {) a: V, e `: g char Id = 'a';
; S$ ]% k+ q- A) _; l4 z1 ?% M( d! a; o L$ s: ~1 G# X* r
ActionGroupDemo(Zone aZone) {3 d J: Z7 B, @9 v& t" V9 ]
super(aZone);
- m/ U+ x6 D% @& B; D5 ? list = new ListImpl(aZone);+ V B6 [$ V$ L0 A( y- ^: g
swarmSetp(); ^$ C; K$ Y( Q8 ~
actionGroup = new ActionGroupImpl(aZone);$ f5 X! R. W: C! y/ n" q
schedule = new ScheduleImpl(aZone);8 P: _9 q$ s$ r+ S1 O
try {/ S: N u2 y" y9 A2 x {" [$ V: W
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ [' v* {6 y& O9 ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* ~7 A R* j! L9 G R8 t+ e ' r1 s N \& z; w" i u7 Y
actionGroup.createActionForEach$message(list, agentSel);
+ K1 T+ L( i" f. a7 x actionGroup.createActionTo$message(this, swarmSel);: C7 u/ f+ X; Q7 L/ b0 P# c2 M
schedule.at$createAction(0, actionGroup);9 G& @4 g' s: e. g7 n6 X
schedule.at$createAction(1, actionGroup);
5 |5 }3 n+ t9 R" H ~" m. U3 L: Y K schedule.at$createAction(2, actionGroup);6 o2 j2 X& p. h# D9 h) P3 w( V6 R
3 C1 I( _" L3 F' ~1 F } catch (Exception e) {
, T: y8 v2 w+ y, A' }: ] e.printStackTrace(System.err);
5 o5 @' ^8 @" T //System.out.println(e);
$ e5 d0 N: N4 H' J5 K' y System.exit(1);
' e \# y+ w& i- ^+ H# E }
/ A: `( C/ H" ^9 ?
: N( t, Z$ U2 M6 [- K3 O- j8 \6 m6 `) S0 @/ ^4 R; L1 V5 q
}! B: r: s% k4 |# @9 k2 r1 m
0 M( l# j- g& u* T" c
private void swarmSetp() {
: \# Q' l& |0 |" F) _! d, } list.addLast(new Agent(Id));2 m3 [9 v8 H5 T" U* `+ [
Id++;
; @" ]/ E5 w7 ~8 {3 t" f }
7 P4 S: R8 c0 P, f; O; N, x* W! Z" B& \( @/ ]8 d9 a- w
public Activity activateIn(Swarm context) {
9 v6 k7 \; x& Z. e( Z6 @) B6 i super.activateIn(context);
( g- d. J4 d& _- j; Y& L schedule.activateIn(this);
# D0 j/ \! m) J9 A8 A8 R' S" l return getActivity();
' n/ G5 D. ~+ j7 H% T. I6 B; T! F }& V- \! W+ ~& \6 Q8 \
: |/ w& B. h$ D public static void main(String[] args) {
8 [2 u5 W6 h1 r9 l, O1 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' \1 Z, w, b6 u! N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. w6 H; C# |' S/ W
swarms.buildObjects();# Z) c# Q5 L8 A" v" ^$ B
swarms.buildActions();; k3 t2 K8 e, x$ T
swarms.activateIn(null).run();
, A4 t. U2 _- k! v7 @: a }
7 `9 @$ o5 J) V4 {7 L) o) X; B' T, ~$ c6 D9 I, [# A+ l+ i
} |
|