|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! W: a6 d2 v1 v R
' j2 }5 B$ |) w0 e! d' Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 c8 [. Q" ]; O& x+ M7 O3 _; o! a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 q3 _! c+ Q7 G$ J5 h5 O# yswarm.SignatureNotFoundException2 y: V( S0 J4 J& G# W+ t4 T
at swarm.Selector.<init>(Selector.java:76)6 F! W! |, ]" H* g3 r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); R: T& _: I2 v+ w% ^& q
at ActionGroupDemo.main(ActionGroupDemo.java:67)4 e8 \3 F2 O# o3 l
% o4 O* r" t4 a- j T5 o1 y1 {$ ]# t6 |4 [( m! B. g5 N8 d$ Z
import swarm.objectbase.SwarmImpl;) ?) o7 Q/ S3 Q. B4 @5 W+ @( H
import swarm.objectbase.Swarm;( f) B I: T: |. g# V
import swarm.activity.ScheduleImpl;
7 \7 @' X# E r1 A! mimport swarm.activity.Activity;) s+ \0 l; q$ {2 ^
import swarm.activity.ActionGroupImpl;
$ F: @4 D% ^ I) D1 M: h- T3 Gimport swarm.collections.ListImpl;
7 X5 R e/ N2 [5 H. j" e, ^import swarm.defobj.Zone; , i2 F( h: b6 I, N
import swarm.Globals;+ B0 a: J9 d/ \, ]/ X- c9 j
import swarm.Selector;
" J/ s( q% V, w" q; Vimport swarm.activity.ActionGroup; 7 }9 O7 M) r! [* c1 Z! m
class Agent {8 j$ x8 A& ]! x# u2 M
char id;& F7 a! W# {" y0 \/ `' U: O
" X2 l; Z0 G `( t& t7 l
Agent(char id) {' f& J$ E) B8 O
this.id = id;
/ Q% N# e5 [& M! s, U6 e. Y }
7 @5 _2 k3 I( v# ~$ A
0 ?7 s: C2 s0 z3 }' L public void agentStep() {; s. n( |+ A! z8 m3 M6 S$ l
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 D1 i8 R" L3 }8 q+ u1 ` }
4 C& U5 Y; E2 m2 k6 L( b. T}
8 a& n) U0 z2 f( h8 J. r* ]! q5 h
public class ActionGroupDemo extends SwarmImpl {
" S3 P3 E3 @* L8 }/ U( G1 a ScheduleImpl schedule;
, ~* N% x* C1 N, l! V# ? ActionGroupImpl actionGroup;
; v( r$ B/ g4 y5 _9 ]% T ListImpl list;
" ]- U& V5 ?, R$ g5 j char Id = 'a';6 E! J& x* A K( S& h4 D
. F# ~* Z9 q4 I" y ActionGroupDemo(Zone aZone) {. B- |. Z9 B% |8 _, E
super(aZone);5 n& F* A& X L. L/ d5 j/ s
list = new ListImpl(aZone);3 P; E7 ~, T4 l i, S0 b* C
swarmSetp();4 Z" ?1 v! n# Z$ c
actionGroup = new ActionGroupImpl(aZone);
8 k" _1 b( ~8 L schedule = new ScheduleImpl(aZone);! C7 T7 z$ A" I7 `3 v( ~
try {
8 U6 ^5 L- a9 K+ d# H2 D Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ r+ q2 M& Z/ l. _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- J6 z1 u3 `; @2 ~! |$ p; O7 n
6 F% X' m, l% X! R' C
actionGroup.createActionForEach$message(list, agentSel);
7 S$ _: _! H6 g- w4 j actionGroup.createActionTo$message(this, swarmSel);5 h9 E( w- e( x6 J0 _8 b
schedule.at$createAction(0, actionGroup);' f2 c" `: ~# W. H1 b b6 j
schedule.at$createAction(1, actionGroup);* v* S( G0 [- w! J7 @) S' p+ F0 R
schedule.at$createAction(2, actionGroup);
4 h8 S) _5 ^# O3 A: t
" A2 s- J4 I' K% N" ~' R2 x } catch (Exception e) {
* G" t2 A& K. Q) x9 [/ l6 R- W e.printStackTrace(System.err);9 e u! r5 j' T. C" M! ~
//System.out.println(e);0 \/ E2 N' b" S# B0 x& L" ~! j
System.exit(1);& `5 i. x/ v0 \- k. C
}6 F" u2 d o! e |1 T* x2 ^' ]: o
. \7 m# x! n' X0 e; A' j1 k/ V8 _
& D7 Q7 A% }; }+ ^$ t; S" ~% l, W }" P; `: S- _* U$ R
! h7 K7 w- n2 i, w0 [) g8 U
private void swarmSetp() {, z0 o: K" i0 t# O b
list.addLast(new Agent(Id));
% a; R# d' D. I1 `# b2 ^, p Id++;; O1 G* e3 X% f0 v' r2 Q
}
: |2 W. U' K( o2 v9 l$ c& c5 T, O' w/ }9 z9 r
public Activity activateIn(Swarm context) {* ~, _, q0 ]! n1 f/ u7 b
super.activateIn(context);; ]+ p) t B' N- x# \* O
schedule.activateIn(this);8 v9 m1 G) q5 T _ Z+ [ {
return getActivity();
8 F: K" D* l4 v' @' `9 t6 y }& C. C# S, U6 z; o) A
* w2 F8 A* g" @* Y
public static void main(String[] args) {
0 Y0 x. a* ^5 e7 x' z. l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- a1 T2 `( H# G" A
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; m( {# W9 y, W/ m* H
swarms.buildObjects();
, i7 i3 u2 V6 G swarms.buildActions();; ^, T" X% K2 a2 g7 M, I; D% D
swarms.activateIn(null).run();6 f7 e7 G7 M, m8 g4 @
}
9 {( Y6 y0 R. i' P9 A% @7 l2 ^2 T5 z; l! o6 i, e& @& r
} |
|