|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 U$ e% x) n: {) a5 ^
1 [+ X K% a8 P4 L5 |5 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' {0 h3 f6 @" k" J; J/ y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 n( ^6 S t% S: d& `
swarm.SignatureNotFoundException
5 R+ p2 U" F) o' M6 O) b( [% E at swarm.Selector.<init>(Selector.java:76): D u0 Y: H! m' E2 A7 h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# N4 C$ q# w- I) |6 Y4 G! d
at ActionGroupDemo.main(ActionGroupDemo.java:67)5 O7 B5 [/ t P0 m
% E, g$ M$ g, S. B1 d, f. T$ T
6 t6 s; \) V4 e
import swarm.objectbase.SwarmImpl;
5 H% ^. F0 U0 L5 s$ }import swarm.objectbase.Swarm;
( e m- J" u5 q' |import swarm.activity.ScheduleImpl;
* w' K- f, u5 o% m. d# Y2 @; rimport swarm.activity.Activity;' Z* u) z2 C& S, V* i
import swarm.activity.ActionGroupImpl;
( x0 b6 g3 ]- j4 D( gimport swarm.collections.ListImpl;* \# y. E! x1 [5 @8 u$ L( S
import swarm.defobj.Zone;
; C7 X$ w, b, m0 j. v5 p. `import swarm.Globals;, m) @) H% ?( r+ _% g
import swarm.Selector;; z1 `) @6 M( [4 V& G6 _5 G
import swarm.activity.ActionGroup; 2 `0 F" i% q% i- P- f. k/ V
class Agent {9 |+ V& L# |6 |
char id;
I+ |# j7 j" Z/ s) ?; q) [, t& M" q: F% j& V
Agent(char id) {$ T% `5 v( `* O5 `
this.id = id;
" `) P$ [- Q) a7 U! w" t. _ }% P; e8 p% N& I2 D7 `
5 X2 Q* q7 p4 v1 e
public void agentStep() {% C2 |6 ^1 |' \7 R
System.out.println(id + ":" + Globals.env.getCurrentTime());
# C S# N+ b0 m& X m! s. [7 z% S }
9 J! x [: p/ K* j, M ?1 |: w" @}
" d1 X" u# ~! r" o @
8 ~! @( U1 {9 v6 Epublic class ActionGroupDemo extends SwarmImpl {
; M8 C# h. J6 ^- t$ ~4 s7 H ScheduleImpl schedule;
$ |5 F8 H9 \) }5 v* F* Q# I# q ActionGroupImpl actionGroup;+ o& E; q8 N2 T2 l! k' P
ListImpl list;
; s. o9 O7 _& }, l char Id = 'a';3 f9 k) Z9 C& B H9 p- K
9 X: R. ]1 n, Q9 V ActionGroupDemo(Zone aZone) {4 u3 P; W1 U8 a1 Y* A
super(aZone);7 H& {- W4 F* x/ f/ L+ D9 [
list = new ListImpl(aZone);
1 T' o! f, T$ t% Y8 e4 k/ E) B swarmSetp();. Q- t6 q% w0 V' u
actionGroup = new ActionGroupImpl(aZone);& p1 ]. [2 q7 N% g& s9 I9 I+ l" b6 I
schedule = new ScheduleImpl(aZone);- {7 [, I2 \1 c; ]7 [( f
try {- x* g$ K/ |: R9 v" W
Selector agentSel = new Selector(Agent.class, "agentStep", false);: W' f0 |8 s1 {6 p
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! s. y2 p! ~% a* {" G8 H. o
% M$ ?! C0 m( c) z! }) M actionGroup.createActionForEach$message(list, agentSel);
# L1 K( I# O6 O) t1 `9 e actionGroup.createActionTo$message(this, swarmSel);+ M( \6 H' A6 T1 N4 X
schedule.at$createAction(0, actionGroup);6 A* g+ N4 V1 j# W! @3 d
schedule.at$createAction(1, actionGroup);3 i- H- v. C8 m4 {+ g
schedule.at$createAction(2, actionGroup);# [$ L- b* K7 ~
1 D$ y1 @8 v9 d+ F' B) N } catch (Exception e) {
3 p* N+ n1 }+ Q. q! ^4 m( f e.printStackTrace(System.err);" m, l7 E, D0 N" p7 K: ~
//System.out.println(e);* \. L) m5 `; H/ d2 T' M: @3 i7 h8 c
System.exit(1);& M; P$ b X1 n8 G( v! |2 ^6 t
}" O& }4 V3 K3 i) Y0 t2 x3 g
* g: v A+ O! @- J7 y: I
5 e' d3 \" `& L" D( N
}
S) H7 q2 r* }. h% {& [: k) w, Z4 t3 x: L% S3 C$ Q
private void swarmSetp() {3 N# Y3 O, j0 `# Z
list.addLast(new Agent(Id));
0 g- Y, K/ q5 K; u) n Id++;* s T7 W# f9 K7 ~0 S: a' N
}
/ ?7 n8 `5 G# M" y* b+ Q E5 L3 @ r; |- T2 B' i
public Activity activateIn(Swarm context) {1 Z3 x. T' {* ^1 g+ @# H; [
super.activateIn(context);
3 M. \/ H) w P( ]9 T schedule.activateIn(this);5 V0 {5 ?% e/ O) @
return getActivity();
& ~& J! q, r1 X" t5 ^) r, s" r5 I _ }
. o* D7 z7 A* q5 }
. |5 k) q7 v, B0 t public static void main(String[] args) {
8 |3 f0 q" Y* r( l& X, E y$ ~/ V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 b: R8 H( W5 f4 ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- r( T4 e, f9 _' @" P$ z/ r7 O+ E% O" K
swarms.buildObjects();
+ v+ K+ t/ N- b9 i: h8 P4 S swarms.buildActions();
8 M% j- n! C- \. v8 C, } swarms.activateIn(null).run();8 g, }, M2 L" h9 Z- l
}, @. ^" ^# u, A+ {# H7 y k) T
; g0 S+ \1 _2 y$ @) Q' L& [} |
|