|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
M0 H) z; c2 w0 a# ~, s* V+ F q8 x) j" d* @8 G& Y$ P5 C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 S; M0 G' v5 _3 ?1 ?8 M" F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 U. s2 G( r) ~/ L( C0 O: `" K" F
swarm.SignatureNotFoundException
+ A8 l3 {" b! G, A X P" J- N at swarm.Selector.<init>(Selector.java:76)/ L# Q6 T; ^& ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" V8 `; e& X; S1 ]& F! n" n at ActionGroupDemo.main(ActionGroupDemo.java:67)7 N4 C( h+ R. T0 j4 F
# M b$ k6 ?( F5 D* H5 C5 D; H) y, `) C2 p% K* g) }
import swarm.objectbase.SwarmImpl;
$ |% `4 { T- J( }! c, U7 cimport swarm.objectbase.Swarm;. B3 V5 a, |7 J* N1 y: g/ j2 x$ w w
import swarm.activity.ScheduleImpl;6 G8 k3 Z! o) `# Q
import swarm.activity.Activity;) _+ a- ^; s& ^: E, U
import swarm.activity.ActionGroupImpl;
( g( A" _! H7 a0 w1 {" I. I# yimport swarm.collections.ListImpl;
5 ^1 i6 ^( q5 @( V5 {* r5 Dimport swarm.defobj.Zone; 9 J" L z, c- K7 o3 O- o
import swarm.Globals;/ j% A& W6 }/ T/ V
import swarm.Selector;
0 O1 |1 m# d! d# nimport swarm.activity.ActionGroup; 2 W+ ^( p% K; @' W7 I
class Agent {3 F1 ^' G3 V+ K* l* o9 q5 ^, y
char id;' ^7 j9 x+ W* L, T7 y% v Q6 |
: w& n; O7 B6 s5 @& ]7 { Agent(char id) {
& c; {/ r: I; l1 ]/ P H1 `2 X" y this.id = id;
, g7 j7 x1 W1 n: M; Y! T/ \; r! q }% W9 O$ b e5 C# `
- f6 M) O5 L7 B9 y( l7 E; _
public void agentStep() {3 V0 R1 \8 G8 P& B2 ~8 p: M
System.out.println(id + ":" + Globals.env.getCurrentTime());# Y9 _" k3 i/ {& q) ^) F, H; g
}8 J2 I" X( B- @/ W$ p
}
/ m% k' i! K1 |) n6 D0 @& T2 x% \
: _: Q/ D5 H1 `1 j% x4 Y4 X; s ^public class ActionGroupDemo extends SwarmImpl {% L" v" s( ~- O8 v- T- M7 e: T) O
ScheduleImpl schedule;
7 } C* |/ r& M ActionGroupImpl actionGroup;8 F5 W2 q1 N5 O$ c o0 p
ListImpl list; ]9 Z0 U2 v# I" X
char Id = 'a';
: U8 E$ m& d9 l: n1 C/ `
( Q4 I5 R3 h2 `3 D6 I! n ActionGroupDemo(Zone aZone) {
( ^" G' U# I( Y9 c: E super(aZone);8 U) r" H2 N: j% Y# T1 I
list = new ListImpl(aZone);
$ `/ U; \ B- W/ x6 H$ B* R. M# Y swarmSetp();& \7 w8 A8 ]2 f. o0 J8 e
actionGroup = new ActionGroupImpl(aZone);( F- B" j3 l# F- |/ S' |' R# T
schedule = new ScheduleImpl(aZone);
5 L! p2 x; s: H! L( x, c" Y try {& n/ z. {, r$ d% o. t Z9 E( ^2 t. h$ W
Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ [5 o9 M" M- q: B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 v$ r4 I, N v. M) M
, J7 R1 K- ?) l4 V. F j( Q
actionGroup.createActionForEach$message(list, agentSel);/ K" O7 j, B& ]7 T' O% U
actionGroup.createActionTo$message(this, swarmSel);4 t. y3 \& H( i% c& x
schedule.at$createAction(0, actionGroup);
) c* q1 Q3 G( P0 h1 w( _5 B4 }( W- ? schedule.at$createAction(1, actionGroup);1 ?8 ` U g' g8 S
schedule.at$createAction(2, actionGroup);( h! I2 P B1 {
4 D$ W+ v8 ~7 W$ M' T. K" _ } catch (Exception e) {
& w0 {" n1 e/ v, r- [! g e.printStackTrace(System.err);4 v* _6 `! s) J. H; l' T; ~
//System.out.println(e);
7 y6 q2 d3 I7 ]- ?) P: h' ^9 N System.exit(1);
& x( `! o! V& C9 x. q+ W }( h2 P, s0 O2 Q
7 ~: S. |7 W* X$ N: k* i
, t) i5 f* h3 d8 J# V* Y }
( F! r1 C2 W; B- w1 k- |- R
, B, r' {5 n' A& y) r6 M private void swarmSetp() {
( Y" D0 Z4 R' J4 R. i list.addLast(new Agent(Id));) z6 l. I$ {3 I' _
Id++;
& K* j. q+ e- ?6 D }
7 u) G0 l. s: E4 ?% R/ M( S2 _! n- b8 v* d
public Activity activateIn(Swarm context) {
& Z$ a# u5 h3 ]9 [$ m super.activateIn(context);
- R5 V$ B! ?0 Z3 m0 h3 U0 m0 X schedule.activateIn(this); {1 D" s0 H0 u1 O
return getActivity();
7 I9 A4 d1 X) f# T }) c$ j; E& L; g+ a
8 f8 h+ y) c" Z$ d* |7 B- D
public static void main(String[] args) {
1 |3 B+ b' G, J4 s- Z* s( Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, A/ C; A: J* K' n: w$ r Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- G, \& Y1 B& a; F* b; J! Y. k
swarms.buildObjects();
. Y, v" X" D% p8 C3 i swarms.buildActions();
" M7 _; D( ]" J# f' W swarms.activateIn(null).run();
1 F, V6 h" @+ Q% E2 y( L# ]/ H0 V }
' H& ~. k4 s. O8 g# v7 R0 L
" E8 K. f; l$ y8 |} |
|