|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 z' M: w4 p8 h. [+ s$ y Q" v
: E% T% V- g. N4 O7 M$ \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! U0 z: J7 I8 H# [1 h' ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( k: x5 @3 {2 h( ~- e% _& }swarm.SignatureNotFoundException
# B( _/ u$ i) r at swarm.Selector.<init>(Selector.java:76)0 d8 c4 d8 }( [5 ^' N8 y, Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 f0 w! T& C/ A5 o. r! w% O& ^/ k
at ActionGroupDemo.main(ActionGroupDemo.java:67)+ i2 B) w$ y; B6 i
; B% T- q+ C" w* c$ B8 i8 A
: A1 k7 g1 s- v1 }' Ximport swarm.objectbase.SwarmImpl;8 C1 O/ p, P$ s+ l
import swarm.objectbase.Swarm;
# A" a. {4 ]. r- gimport swarm.activity.ScheduleImpl;* ]5 x' ?8 N$ B4 S& U$ z/ ~
import swarm.activity.Activity;8 F; f7 @8 K9 Q c
import swarm.activity.ActionGroupImpl;
/ M2 J* X3 m& g+ o6 ^ h: Mimport swarm.collections.ListImpl;
! ~3 G' B. F9 x x1 Y: @import swarm.defobj.Zone;
$ [; a# ~2 m( ` f# {8 _3 E: u- \import swarm.Globals;
' j7 ?8 m/ g. n" c# Q3 ^/ y1 d8 H# wimport swarm.Selector;4 E4 |; [/ j6 o1 s; W/ A2 n
import swarm.activity.ActionGroup;
( X6 @- [, Q0 a% E, ]. I+ Iclass Agent {
- D# e' ^/ Y% W/ i char id;2 Y: e. |0 P v8 y" L5 K
/ s. Q+ h$ q$ } o* D6 l Agent(char id) {
' m; N3 m; J% D+ | this.id = id;
6 Q% u' h8 b I5 d }
# v3 k) I- x @. l" A2 s, `3 _( r' U
public void agentStep() { n& K) F% J. t
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 l9 }$ A5 B9 @& n c, X }/ M3 B2 q+ O: m( G% j
}
$ A, H+ O. ?" O5 J+ `) m' @+ M9 l0 [5 G. q
public class ActionGroupDemo extends SwarmImpl {: m2 L, V1 Q( c8 P2 \6 a, @
ScheduleImpl schedule;
/ O [# y- O- P5 Y ActionGroupImpl actionGroup;
' A5 ?6 J2 I2 h6 r% q/ Y1 a ListImpl list;
$ ^2 _$ K! c. M7 w char Id = 'a';. ] }' m7 V" k. B* U) u
# d+ E: v2 F; C5 ^) O# Q2 u/ o) j ActionGroupDemo(Zone aZone) {8 y$ E% l' K) Y! ?. {" o& v
super(aZone);/ w0 x: ?* ]9 X. }( h
list = new ListImpl(aZone);
, m5 c: \' G( ^- b- I1 ~3 x% h swarmSetp();
3 h7 I& x2 N6 l actionGroup = new ActionGroupImpl(aZone);6 c/ q( R5 A8 k& s- k3 `
schedule = new ScheduleImpl(aZone);
3 @5 e6 ]) A% r/ b5 `- b try {
& e2 N) O3 P" {, Y( U! N: | Selector agentSel = new Selector(Agent.class, "agentStep", false);" d9 k6 {' N+ ~, r' }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' d3 B: y, R* A 9 ~ h0 v$ W2 R) E
actionGroup.createActionForEach$message(list, agentSel);
2 Y/ V$ f. `+ Q U actionGroup.createActionTo$message(this, swarmSel);5 A6 A# s, ~# s/ Q& ^+ W
schedule.at$createAction(0, actionGroup);/ p, p9 b O7 j4 _2 x b& C) P
schedule.at$createAction(1, actionGroup);
( W% N( Y8 d$ W- X: n0 L schedule.at$createAction(2, actionGroup);& ]6 b2 t6 x8 E* C" m
E+ e Z* B9 e# ?( h$ ~ } catch (Exception e) {( L, c" ^7 u4 f
e.printStackTrace(System.err); F# ^+ v0 j, i4 L
//System.out.println(e);
" y% A8 C& K- d0 d, v! S System.exit(1);
. E8 ?$ A, B3 |8 @) p( B" l% [ }
0 \2 U' K3 P) T8 T4 \2 A4 E4 @+ u6 ^8 y5 v. O N: K) h/ Z
, y- p+ k7 y9 X/ U. i& a- L/ A }* ^9 y8 V9 p( y. B
7 N) M% M0 M2 m& Y, S$ g private void swarmSetp() {
( U8 P! h+ y2 j2 A6 E8 K( p/ T list.addLast(new Agent(Id));
) `( D1 m$ R9 J: H* J3 V3 c Id++;
5 Z8 k: a8 @8 i9 |" R; A }
) [- D& j9 {; c4 a0 Y& V5 l/ S' u8 O( C( e; l+ b2 w& U- l: c* X
public Activity activateIn(Swarm context) {) t, y& ?0 X" ~( U
super.activateIn(context);& F/ D& E( k! u* R' z# I L0 U- q
schedule.activateIn(this);
& U3 j. L' h# P& d' ` return getActivity();2 L t5 Y/ g7 g
}9 |! K J( h- d( c2 i' G+ x3 }" F0 `
L# I$ c6 O# f) A$ }& V% r
public static void main(String[] args) {
# x* `& K5 D2 J' T6 P" G& ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( }6 M; r3 o6 D6 p9 y% \1 b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 w, y7 z( G: Z3 {' K! {
swarms.buildObjects();
8 m! M4 S0 r1 f8 E- k swarms.buildActions();
9 P# {' u, S3 ^6 _6 [3 l. s swarms.activateIn(null).run();, W* |# y% R) g; o k) b" T
}
& ~6 I' w- D. Z6 H( s& y7 w3 L) j8 w2 A
} |
|