|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * S, S( Z; h" Q3 U z6 Q: H
( R4 h! {) S6 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; R: t, M4 e4 a% k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! h* A; v; A! \" J
swarm.SignatureNotFoundException$ R) \+ A( O( `# _1 r8 E7 H/ U
at swarm.Selector.<init>(Selector.java:76)9 d- W/ J5 r! O9 x. Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 }1 K- F' Q! j0 R at ActionGroupDemo.main(ActionGroupDemo.java:67)
, L! O7 Z, }8 W# t3 t, p8 ~3 P. p) l y0 l5 Z* U
. E9 i- D% V9 L& X2 ~) \! h. `% E
import swarm.objectbase.SwarmImpl;
' o% w. O- [8 N7 W5 {' T( iimport swarm.objectbase.Swarm;5 F3 \/ r. Z# G/ W! E
import swarm.activity.ScheduleImpl;* C. t/ Y! |+ F+ G$ a3 u& C
import swarm.activity.Activity;2 P) e- }+ t0 {! @' G0 E8 g9 k
import swarm.activity.ActionGroupImpl;0 U) [4 {& n/ Z3 [# a1 U
import swarm.collections.ListImpl;+ f! F" s9 J6 G, L9 u
import swarm.defobj.Zone;
2 p( b1 r7 n2 \import swarm.Globals;1 y# S% O. a3 [
import swarm.Selector;
& V7 \0 g0 w3 K! G# h! vimport swarm.activity.ActionGroup;
' |( l* M1 E* Dclass Agent {
5 \3 F8 g5 ?% ?) A0 m1 Q5 e char id;' V& H1 \& f6 J9 ^7 |* f/ H: v
2 @6 E* A& C) |! ~/ r, j: W
Agent(char id) {
$ b ]# d: m2 s3 i# _ this.id = id;
9 ?& E$ }' F; Z5 {+ P q }
6 M0 r- f( F* D
4 d9 a, [& W* t* v, Q4 t! |, B$ W public void agentStep() {7 Z0 Z# P. p+ t& G
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 E4 M/ k$ R. w3 M2 A }
' b6 ?3 s+ } h1 ?# Z% j( \/ h}
( B. K5 r5 q/ R' S; b6 I- S# ^% C
public class ActionGroupDemo extends SwarmImpl {2 I/ G" K2 x! n1 D+ S
ScheduleImpl schedule;7 J6 u8 c$ R1 @% n; z0 W$ n( H) V. T' ^
ActionGroupImpl actionGroup;- S% M3 ~! L, `- k2 R9 g% f, K/ q; ~
ListImpl list;
5 L1 s6 a) C6 ~- y, b/ G$ C char Id = 'a';
0 I: O8 L5 A r$ d6 F4 `, z9 z4 R' k" X; w, p5 ^ U
ActionGroupDemo(Zone aZone) {- k6 z8 t/ O/ c' y6 q. q5 U6 j
super(aZone);: q% M4 X9 Z) N3 Y
list = new ListImpl(aZone);
2 d- I, U. p+ r9 I& A- q; } swarmSetp();
' t6 _; k- h2 g7 q) Z2 D- K actionGroup = new ActionGroupImpl(aZone);. i$ w7 t" G6 _8 z# G
schedule = new ScheduleImpl(aZone);1 n7 t1 G4 U7 D
try {9 @* @7 E2 c( Z) }( T* y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 t8 [+ y5 s8 \& ]6 l0 F ]" z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 K) N2 P9 R ~" o/ q; n
. t5 j2 P) Y% k" {) R5 {7 r actionGroup.createActionForEach$message(list, agentSel);/ x; R6 C4 q6 e" v
actionGroup.createActionTo$message(this, swarmSel);4 ^( U- ], h: o# g& a5 }6 \3 v
schedule.at$createAction(0, actionGroup);, J# |& Q: d4 e% ~
schedule.at$createAction(1, actionGroup);
7 c/ v0 ?. w( H3 V% H schedule.at$createAction(2, actionGroup);
4 J8 C8 @: w( t- l% u
: m$ q* G$ v, p9 q% [1 d } catch (Exception e) {
. a/ ~- F6 u% U3 r9 h3 g e.printStackTrace(System.err);
) f% {# \$ [" |( e0 _ //System.out.println(e);' [& \& Z& [4 C/ Q* @
System.exit(1);8 g/ `% z* W* y+ t
}6 v; a# W/ M# e7 j9 b, K) \9 S
6 Y+ {! i% U0 @) c
1 u. ?' T7 ]' w s- r }1 N B+ }; Q: T8 D
" Z+ L5 M$ V/ z0 T4 E7 O# b
private void swarmSetp() {3 X) B, ^0 ]$ C0 E4 C4 [+ M: u
list.addLast(new Agent(Id));
3 z' }/ d8 O! o, ^: A Id++;, h3 b1 V. j/ a' l/ C P
}& D. d4 ~. ^1 i. {
' ?9 Q" a6 V" r9 M0 a0 R2 p- ]8 n
public Activity activateIn(Swarm context) {1 D- n2 X8 Y( M- L6 I( a! T
super.activateIn(context);
/ o3 o/ c& s5 |# i' V schedule.activateIn(this);) K6 t) G1 m; f
return getActivity();/ Q9 U9 L& z0 v6 y4 B' P# W6 w
}" n; [* o. U G, e3 v4 f/ L
7 N3 j9 h8 i7 j# K& Y) ~ public static void main(String[] args) {
1 Y$ h# `: u& P* ~$ A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' _: K" L# u- H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. H; N- v) S E, B4 i, \$ X' X8 P swarms.buildObjects();
: }. F9 }' }# T1 V( x: J5 ` swarms.buildActions();* _: U6 I: {. z9 B2 K
swarms.activateIn(null).run();; W6 [& p$ O7 J" [. ]0 V
}
: |+ F( @# R4 l+ f" t* o5 H- z
$ d" u1 ^( k& [2 X} |
|