|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 P2 I7 k' \4 j6 l) f* t, j
. q- G8 b3 A5 r6 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ K) x6 v$ [6 H- [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 x- G( ~1 J- p. }* U
swarm.SignatureNotFoundException
9 n; b& J( B) p- [ S at swarm.Selector.<init>(Selector.java:76) | Y' A& ?9 T4 Z* f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 M: }4 V$ h/ ?' O1 b5 R
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ X8 r8 @! @* T! f3 y# b% a
- b8 ?( E0 s+ r7 i& y
6 d, r% h: H) J( Rimport swarm.objectbase.SwarmImpl;
' V) Z0 N! S; Uimport swarm.objectbase.Swarm;
6 Y, T- M: Z, \. y$ Wimport swarm.activity.ScheduleImpl;
5 C' k" Y( ]0 e6 g( N* L! limport swarm.activity.Activity;6 f* }+ o" }/ e9 k" K5 z* `: S
import swarm.activity.ActionGroupImpl;7 w3 Z! a& U5 z) r# e& _: r: G
import swarm.collections.ListImpl;' ?8 V! g, U4 e3 s3 p& _; z
import swarm.defobj.Zone;
: w( ^% _7 p* r6 Limport swarm.Globals;
& V7 }, N$ Q9 F' ]import swarm.Selector;
2 d' b% T- |9 Q. g }$ wimport swarm.activity.ActionGroup; 2 I6 d2 Z7 o0 k# k# I
class Agent {$ v& L! i3 R1 M
char id;, S2 ~3 D G9 R9 x
( ^! a7 ~, @( U4 K8 @# J
Agent(char id) {0 z& N2 ]5 ]* }8 Q0 p
this.id = id;
9 E8 g; N/ A4 J* d" i# [ }0 h7 ]. m8 Q4 Z' z9 \
- X( e. B: q* _& a$ h
public void agentStep() {
( G1 l, {# z: ^1 X, P( |/ s System.out.println(id + ":" + Globals.env.getCurrentTime());9 O/ P9 i' a( z" M+ _. b
}
& d8 s: X: g1 |; Z/ H2 a}
9 q! n* j1 D& r0 ~- \- M; Z1 D& B. q- g; o6 J8 b$ U% Q( `4 A
public class ActionGroupDemo extends SwarmImpl {
D6 [4 n3 T H0 Z ScheduleImpl schedule;
7 [ @; e; X! i. p7 F# o! h ActionGroupImpl actionGroup;5 j2 q% o; }# R! u
ListImpl list;! J2 z- p1 B, U+ y2 P0 T
char Id = 'a';
2 @/ S) c) [) x1 S2 n7 T- T1 p6 a: n' N6 n, a, ^
ActionGroupDemo(Zone aZone) {5 Q7 I* p* f9 O8 Y
super(aZone);
, s1 h/ y1 W" |0 | list = new ListImpl(aZone); |# M6 p2 T P5 y, J4 m
swarmSetp();
q7 W; [# f3 }8 g% J3 V actionGroup = new ActionGroupImpl(aZone);
5 j; Z) ?# {) p1 a schedule = new ScheduleImpl(aZone);" W# O3 R% ~5 ~, |# V9 y8 l: w
try {
% l; d6 P T7 M% K3 |% }5 {/ q Selector agentSel = new Selector(Agent.class, "agentStep", false);; [6 a: r; Z3 T9 s* M7 ^$ C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 L! @; [9 g4 G* [0 m% j* u, d" `
3 x8 k" L; t$ m% R1 w( g4 u
actionGroup.createActionForEach$message(list, agentSel);, p8 c" o. a) u: K' ^( O3 _
actionGroup.createActionTo$message(this, swarmSel);
; V/ Y) m& f! F7 a( X9 X$ a schedule.at$createAction(0, actionGroup);
/ N2 K7 [4 T) j schedule.at$createAction(1, actionGroup);( H$ g+ Y& v7 n2 v
schedule.at$createAction(2, actionGroup);$ b# P. a# H8 J& A3 e& o
' e; e p" B% L9 {" X
} catch (Exception e) {: j7 T) Q9 a% W2 [
e.printStackTrace(System.err);8 [5 T2 j! [2 K: X# A" _- m- F N
//System.out.println(e);
3 c8 W, B- M* x9 a System.exit(1);) t3 _& X* ]) {' Z
}4 p8 Z: n# a# Q; G* f
X* j; m( Q% O, j6 a9 \; i5 j8 n" C0 ]- k/ O) u, r
}
, ?, {. ?( a, X* x' x" S3 H
% O4 M- {$ ?4 v1 z+ Z. c; N' m private void swarmSetp() {2 ]3 ^' T0 R0 e& s: `% C- w
list.addLast(new Agent(Id));
# j1 J8 E w. H) Z2 B Id++;% Y. u: k, ^4 R3 j' L5 X& T2 W1 u0 c7 V
}
' X3 N) N& \1 W3 C/ o# p X5 e/ D" s: G6 o) O# }
public Activity activateIn(Swarm context) {; u/ X [" b$ V- T
super.activateIn(context);6 f' J8 }0 u- ^$ \
schedule.activateIn(this);
' M) Q* i" i6 X9 a8 k return getActivity();
5 D, y$ M! X; z& n( H }
0 F @. ?# n$ _- m; n- I- M% E6 K' U4 f1 _9 ]: W. {. [
public static void main(String[] args) {( v8 F. [# j/ S1 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% Z/ M3 Q; c! ~) r+ ]& m5 t# _- I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 q$ ^& z7 T) ~" R$ ~. j swarms.buildObjects();5 T# y1 \/ {/ K) _. @+ M1 m4 u
swarms.buildActions();- D. H2 L- a/ ?1 y+ |0 a
swarms.activateIn(null).run();
* H1 \# u7 [% U- {( \( v8 V }
. `0 j/ S& P5 c8 F) h0 v, [0 i1 R
: O r: U4 T9 |& t( q8 x# j} |
|