|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : \$ A" y' H4 W. ^8 H. h1 `, m
2 t5 u3 \) |; ?& E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" f; a$ X, I: G% c0 E1 P) G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ O7 O3 I6 [% F
swarm.SignatureNotFoundException
# F0 i T( A+ J$ e5 L at swarm.Selector.<init>(Selector.java:76)) g3 i0 F; i2 j( D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ P9 u* x, G; y" @+ I- B7 X at ActionGroupDemo.main(ActionGroupDemo.java:67)/ t; F Z8 u. q" r7 i
- t/ X% c- ~- L) F
' D6 N" `$ H4 C8 F0 Gimport swarm.objectbase.SwarmImpl;
* H: O% @& Z( Ximport swarm.objectbase.Swarm;
% q( [( v& k$ q( p! D4 f! C5 Q9 ~1 [8 [import swarm.activity.ScheduleImpl;, g0 E7 }8 W% m
import swarm.activity.Activity;
% d8 m) o3 x$ Yimport swarm.activity.ActionGroupImpl;
; {3 \! s" m$ e( V/ L' X, a6 |import swarm.collections.ListImpl;2 s0 g% u* X: R: s+ v$ @' G
import swarm.defobj.Zone;
$ W/ ]& y4 M1 v: n" O6 D! Y5 yimport swarm.Globals;
8 v( S' ^, b7 k; fimport swarm.Selector;1 H! j) n0 V) K: J3 X& K# V
import swarm.activity.ActionGroup;
* W6 v. Z# \; T+ j0 I, u% a4 iclass Agent {0 V7 \0 ^( R3 e( s0 Q6 o
char id;2 G9 H; o& ]- x# r8 e
; H- {# z* n: J- j$ j! m" q Agent(char id) {
" T% J7 H, g. i this.id = id;5 Q y$ v# ]; Q$ k
}
1 n: ]# G/ M) H- \# Q! N5 T* o1 E) E% \ B
public void agentStep() {
! H' r/ |! z& }4 _ System.out.println(id + ":" + Globals.env.getCurrentTime());1 }# u) X: I2 C/ i1 T* m8 O' u4 Q
}
7 b0 k- l0 R+ q9 T A* Y}
4 f, t- |. }4 D, V' X {, `- M$ a, y
public class ActionGroupDemo extends SwarmImpl {6 |/ \4 l" R. g; B8 {
ScheduleImpl schedule;
1 |! J( P4 P3 P ActionGroupImpl actionGroup;
0 J$ i5 }( I j ListImpl list;$ ~( ~. z- e$ H p' h& h
char Id = 'a';+ w- G `# Y g" s0 t) L
; E1 O5 `+ Q9 a8 ] ActionGroupDemo(Zone aZone) {# i0 \! H" e8 ^* @& G
super(aZone);
5 P0 k. `# I) J6 C& i7 _8 c list = new ListImpl(aZone); s0 l7 @+ } p9 z3 I& t
swarmSetp();+ ^( M9 Q% K8 l- n! `: f
actionGroup = new ActionGroupImpl(aZone);. I6 C8 @8 b3 ?% t) w1 a9 Q3 b
schedule = new ScheduleImpl(aZone);
. E( @# [' k% r; C { try {
2 f9 B A6 f1 o6 A( k$ t: v; R: ?6 B Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 p S& ~" f, T/ T; y- Y& E Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% i7 W1 Y. Z2 U9 y# s- Y 9 U* f" B( u6 C- B
actionGroup.createActionForEach$message(list, agentSel);, W' w( s- I; E: ^: g( ~
actionGroup.createActionTo$message(this, swarmSel);
* ]) [8 _- u4 H8 }, j' K schedule.at$createAction(0, actionGroup);" r- ^1 X! Q* g) N
schedule.at$createAction(1, actionGroup);# }. \% T+ Q2 N1 X# H, T+ R
schedule.at$createAction(2, actionGroup);
: L1 z W. B- `" l7 j) B/ [6 m4 C, R V4 x
} catch (Exception e) {
/ D/ E0 H( j+ l+ g% W e.printStackTrace(System.err);
0 T; a8 K# V. _5 ~% x //System.out.println(e);$ h2 ?% d) P: b) E7 T' [% S
System.exit(1);
D7 m; z, [6 G3 L! @# w; V }
. @ H5 m: y8 M" C
9 w# o5 w! W" ]8 F6 o8 L3 z% |6 [/ a6 Q! Z0 e1 ~6 C# I
}- Q( b: R$ i x( S- E/ z
$ c4 i) ~6 Q0 o( ~9 A private void swarmSetp() {
; v2 ~/ O3 S6 S" g3 Q list.addLast(new Agent(Id)); {3 d/ L2 _2 B
Id++;
) A2 a0 {. A5 L3 L6 h& X5 @8 g }4 O6 }% U- M3 o* G* B$ X
5 d1 g( w- F0 ?6 _9 ^0 T
public Activity activateIn(Swarm context) {
# w9 A" i; m0 d0 R& p super.activateIn(context);
( t8 f# J4 n4 E, x7 { schedule.activateIn(this);' r- V: U5 J+ t8 c6 q4 C! a3 L4 O
return getActivity();& K, u( F0 J4 ]
}
( f2 D9 p! s' w; z, \+ Q1 ^+ P# Z5 [1 J1 [
public static void main(String[] args) {! `+ M7 D/ [1 q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 G( k Y5 {2 o [$ z' e
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* F7 e% E8 f. t& h+ e
swarms.buildObjects();
. j$ z; U$ _- C swarms.buildActions();% T' u9 z: K' s% M
swarms.activateIn(null).run();1 E; Y9 [- j l$ ^. F
}: C& C5 O5 U( J- O
4 [4 C5 F5 m/ G/ e9 F! F9 `% a} |
|