|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Z: i& s5 J5 [! {3 { B% B% M9 ?' L6 F' s& M+ Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 a& U# [, w4 M, y" `( L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 L- Z/ z) J. D2 Aswarm.SignatureNotFoundException
/ ~. r& _+ p+ ^; c at swarm.Selector.<init>(Selector.java:76)* w' ?" _4 s y S
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), E$ p: x( Z' g* h
at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 L4 B3 n5 O8 A3 d4 m1 d
X1 R* k+ k; N8 l3 a8 J1 ]$ c. D/ c8 {9 {$ E
import swarm.objectbase.SwarmImpl; Y, b/ e% O) z% `6 ]* T5 _1 V
import swarm.objectbase.Swarm;
: w$ f. r3 a2 M: ?import swarm.activity.ScheduleImpl;# p" n+ g7 }( i: M2 C) q2 ^ D
import swarm.activity.Activity;
9 h d' }8 E# v) `% g& Ximport swarm.activity.ActionGroupImpl;
2 u0 Q. k' r1 l% q6 o8 R4 f! Uimport swarm.collections.ListImpl;+ q5 @+ ], D" L+ {. Y3 ?
import swarm.defobj.Zone; 5 h: I5 f4 t7 M; w
import swarm.Globals;
/ C v# M% {4 V; w, bimport swarm.Selector;/ w }' h7 ?* x$ l) B0 @
import swarm.activity.ActionGroup; $ f7 V O3 K, ^. r
class Agent {/ E7 L5 K6 f$ A! Z
char id;* c0 Q/ |$ [4 V+ ?6 C# J
; m1 V! a( [& P/ e2 B
Agent(char id) {! P. e" j. A3 W2 S# z
this.id = id;1 E4 J4 A- Q, F2 ` ?1 s
}5 R9 S2 X# f( }/ {- H7 F% C
% G8 E6 v5 ?- e3 L i7 f; h
public void agentStep() {
! m D0 f* w1 b- ?5 B& p/ P7 y+ H System.out.println(id + ":" + Globals.env.getCurrentTime());
9 Q5 X% x$ U/ `9 Y; f/ q, M- { }
/ [" ^) D. C0 l}
6 {8 X: p% f8 D7 P$ ?
8 C# Y! h; \6 f) w9 lpublic class ActionGroupDemo extends SwarmImpl {5 t8 q$ f* Y( ~: h; j0 q. c
ScheduleImpl schedule;
$ c1 _8 L3 D8 m( C# j ` ActionGroupImpl actionGroup;
1 L% p" @8 n, ?) S: L ListImpl list;/ w1 w. i) {9 V0 ]. c% C- t
char Id = 'a'; x$ v5 J2 F' y" m: I! [6 N
" N0 [/ N0 ^2 y: P. J
ActionGroupDemo(Zone aZone) {
2 _' B8 C) c, t5 H super(aZone);; k# Y1 C; d# F1 y! A" P' k
list = new ListImpl(aZone);6 Y4 C" R" z: H/ `: \/ J) T4 {
swarmSetp();
! [1 K( i Q: `: l actionGroup = new ActionGroupImpl(aZone);
# M" c4 X5 ^9 p* i schedule = new ScheduleImpl(aZone);( q" W, w' S8 J4 W
try {* E) p E; T, A6 e. k& k7 r3 T
Selector agentSel = new Selector(Agent.class, "agentStep", false);% B! L3 W5 p1 o+ z) _* L1 Z+ I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 a; v2 U+ ^1 P, z; S , V9 r1 z1 W; A: _% j* A
actionGroup.createActionForEach$message(list, agentSel);$ ]7 q! h% [- q- L- G2 c7 W7 k: a
actionGroup.createActionTo$message(this, swarmSel);/ z4 I( O: k' u: T! c7 K7 ^$ A/ [ M- T
schedule.at$createAction(0, actionGroup);
4 Q n, N: h# j7 Q7 U9 V schedule.at$createAction(1, actionGroup);
; E# o: n. Q; g' D( W( D schedule.at$createAction(2, actionGroup);
; m) s; {/ r1 o/ E8 [7 b- p& X) Z" n
} catch (Exception e) {: |3 ^" O7 D7 Y% d2 \6 A
e.printStackTrace(System.err);
c3 H* z+ d0 Y8 j% ? //System.out.println(e);
& z8 w5 ?3 q! c5 O; H0 L System.exit(1);
. l* N8 F; k; G2 o0 K5 S9 C: Q }
, u) H, M* R' j8 j, M7 j5 I% R7 A
% x- J- g; ` M8 z) ]" x9 }. N
}
0 A/ I; k2 b, Q5 M# Q, G. p6 O; c3 m# w% W
private void swarmSetp() {: n9 o8 o& Y n9 n' T% h
list.addLast(new Agent(Id));- A& W/ t* T% Y' d3 K# I4 `3 m
Id++;3 B& N) U5 M" G# x5 X" w& j
}. B$ F0 o; G& O# a# G( l- E
3 z5 G1 ~" Y% u- j% k public Activity activateIn(Swarm context) {! s+ H, E( ?0 l g2 D% x( z. h2 q
super.activateIn(context);
2 L4 h) v4 {1 E; a8 x schedule.activateIn(this);5 j: ]6 d: _/ E& C- u- ]6 }! T7 B
return getActivity();& r3 b; N8 P2 i; {& x
}$ p* f9 |8 \; p5 R5 B8 w) ?
/ X- B4 z$ ^0 p, f2 i u, b3 a
public static void main(String[] args) { y+ L8 D" Y, T, b7 e% O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' l/ P. _1 \+ P2 W B+ w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) S9 v( \! s' z9 T# B C
swarms.buildObjects();
3 N" L ?" W+ L' \+ s( F# H7 T swarms.buildActions();
5 y' d; R) L- D swarms.activateIn(null).run();+ J( Q5 [5 \# x: Q
}( j2 x d3 M, L- k, u& b3 w! ^
8 [* q' u3 V5 i) r" U
} |
|