|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 c4 V! h/ t# a# ~, b7 z( a' l- R3 A( G- K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; q1 \- F- w- b' b6 h, }6 Q! \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., X- l2 D6 A% u% C# ` e) h
swarm.SignatureNotFoundException
: s3 T8 S( k( v8 i) K at swarm.Selector.<init>(Selector.java:76)
% r1 {% L! N8 v! t: r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 a4 n$ x* M2 m8 C1 j! v/ _7 f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
`% Y6 D- F" a$ [( |' ^" `( D$ ^ q/ [* e4 ^" V
4 r: }& h: N8 j( m: \6 Cimport swarm.objectbase.SwarmImpl;
" _* V9 P2 S( b6 N8 i/ Vimport swarm.objectbase.Swarm; ^; \. X |1 Y+ X
import swarm.activity.ScheduleImpl;8 ~) j5 E. a/ `* ~8 w: z
import swarm.activity.Activity;9 { t. T4 z ~0 W& s) ~
import swarm.activity.ActionGroupImpl;; { Z/ Z7 }; X. [5 z
import swarm.collections.ListImpl;# t4 U9 _3 G ^+ s8 |9 L& m9 `; o
import swarm.defobj.Zone; ; d* D( |: V% x7 ~
import swarm.Globals;
$ \" k {2 J+ _, ?* M& Rimport swarm.Selector;
4 U& k: R. R Q9 o' e$ I9 \) G2 Dimport swarm.activity.ActionGroup;
+ ]+ q0 p) h) Q8 \' U7 Q5 ^class Agent {
( ^: F; q) I+ H; r1 f I char id;
0 S# G+ Y" r6 @# [+ V. I
" z( N6 O1 ^; O4 q- O! D Agent(char id) {2 u+ q% ]* a: T" L
this.id = id;
) v# | {* v9 _( @0 I3 c8 y) m }- |5 l; P' D+ d0 e9 H" k
* F \& \' @) v8 o6 O
public void agentStep() {
* B \7 e. C1 [ System.out.println(id + ":" + Globals.env.getCurrentTime());( I: j8 @: |3 @& z& O3 s
}$ p; ~, m8 O+ c) s. R( v2 B/ a7 I
}3 |( }- w* O. b& k
" g' [( U/ G( A% A6 _( e# M$ ~
public class ActionGroupDemo extends SwarmImpl {
+ C" ^8 B. Z- i ScheduleImpl schedule;/ \% \! s$ h; y- r- Y: ?2 o- v
ActionGroupImpl actionGroup;
2 r: H; m; B) o" M9 Z/ a% J ListImpl list;
K: l) l2 Z+ ^$ b- V7 \ char Id = 'a';
& c. E Q) G3 c( b) @, P! N; u, {& N6 K* c% b$ q7 J
ActionGroupDemo(Zone aZone) {
! @$ N7 V |3 G% Q. j7 n super(aZone);
, {! z& D. q$ ` j/ E list = new ListImpl(aZone);" Y5 H) v8 l# O) f
swarmSetp();0 V" t$ E) \) Y# D, Y) Q- r+ l
actionGroup = new ActionGroupImpl(aZone); B0 c5 W1 a9 t# V0 k
schedule = new ScheduleImpl(aZone);+ k Q# C" R7 ?0 U( s R6 o1 x y. ?! W
try {
4 ]4 p, L& [- ]0 T Selector agentSel = new Selector(Agent.class, "agentStep", false);
' V/ Y" H+ d6 V7 t3 q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 ^2 D" M |/ n, P& w3 H ' \2 } X$ |5 j# e1 ~
actionGroup.createActionForEach$message(list, agentSel);4 n$ d, y7 E8 j! F) |+ _, x) O, \6 E$ O
actionGroup.createActionTo$message(this, swarmSel);5 k2 ~& }6 l0 M4 ?; r; p/ B, p
schedule.at$createAction(0, actionGroup);
( D5 h5 n% l+ O' k) N5 B- A schedule.at$createAction(1, actionGroup);) R; d* ] r: E; k. k" i, f4 j* b
schedule.at$createAction(2, actionGroup);' q! Z2 ~" w4 E- t" B
$ \. I3 A Y1 Z3 l- m1 \( g! L
} catch (Exception e) {
9 Z: j7 u7 L6 J3 w. K e.printStackTrace(System.err);
3 @0 {8 a0 c, H: G" r r0 U //System.out.println(e);
l; k( O5 r+ U5 [8 G0 \* S System.exit(1);
7 M# N3 F% n% |4 @2 v( m }& ~3 G" f/ d2 Y& d7 U
( D. y- |, v" \% ?8 p: |0 L! I e* x: H. `3 }
}
9 c& d$ Q5 [( P7 F4 h7 \& ~- x8 m. k6 w. a
private void swarmSetp() {% W: ~7 ]& p- |9 W, G2 |0 z
list.addLast(new Agent(Id)); n# ]# i; j. j, m, p6 _
Id++;) z4 ^3 L: b5 J0 \% p2 P5 n; K6 h
}
5 R4 Y- X4 g p* b4 I: f5 U, R# t* @0 _
public Activity activateIn(Swarm context) {
# B3 X- a% I* V' V3 D# [ super.activateIn(context);0 ]. p. [+ d: Q7 I6 H
schedule.activateIn(this);
8 k# `- W" ^4 f& C% z return getActivity();
) @1 k' E: P" l! y: J3 Y: Z }
3 q' v6 f* l) U/ X. A9 J3 [; D4 e- q& S! Y/ u5 c9 _
public static void main(String[] args) {
" Z% m1 V, Q- N# ?( ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! J, G! K% i$ Z0 R* m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 t5 L- a }$ ?9 d swarms.buildObjects();
; ~# m& h$ v" N ?: Q swarms.buildActions();( }) Y( I$ G9 `+ R
swarms.activateIn(null).run();& Q$ ^9 ]5 G. b, T k) i6 G
}8 K) W' ~4 a M6 {
( P" ^- g' |; W# _2 h} |
|