|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 L, @5 X3 B' H p
5 O# T: f8 ~9 C2 `, T( H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% R+ _! j7 G3 \7 M7 i7 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& T! S# Z$ U& `5 |' e: Z# m
swarm.SignatureNotFoundException
1 P- P5 \5 ]0 J2 w5 g, m- k at swarm.Selector.<init>(Selector.java:76)
n& n. f v) |# L+ B4 g at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 R/ x0 p' a5 c2 [9 R
at ActionGroupDemo.main(ActionGroupDemo.java:67)
" U9 Y/ F# |1 ~8 I$ Z
2 C5 f% e9 v2 g- ^$ _/ V. g7 L# L2 ~& T1 g
import swarm.objectbase.SwarmImpl;6 t, F9 z7 ], m& e/ c
import swarm.objectbase.Swarm;
) K" V/ _5 x; c3 v' y8 e$ _8 uimport swarm.activity.ScheduleImpl;: [! K& C* @( v/ P4 P
import swarm.activity.Activity;
* `7 h- ^& j+ e0 c4 \+ ^- W8 P0 _import swarm.activity.ActionGroupImpl;% Z/ C" q* ~ Y0 }3 d6 w7 \5 V
import swarm.collections.ListImpl;
% u* k; f' z# Rimport swarm.defobj.Zone;
$ R/ ~5 y' ^( p) H6 i: ]5 M; }import swarm.Globals;
/ d+ |- |+ v3 x" N @! |5 simport swarm.Selector;
# z" L: _/ {8 C- R7 dimport swarm.activity.ActionGroup;
% _2 [7 g0 R qclass Agent {
# c( K6 Z! e' y7 Q# Y char id;
0 O# J8 `# a$ U2 ]+ p
! k# D) z) K; U, p Agent(char id) {9 e9 W0 e7 H3 R$ v+ f
this.id = id;) J: W ~2 S3 q+ i3 A9 Y
}0 i6 Y- Z2 k% `
! l1 m' N1 p8 g public void agentStep() {
- l* Y9 U2 ` |& A) r9 \+ ^4 ? System.out.println(id + ":" + Globals.env.getCurrentTime());
4 j+ E: K- B. L- C. g }6 F6 k" J/ T( z1 t3 z; G M
}+ h! i5 p7 b$ E0 i& t ~
" {; |% I" _3 Z: S0 Q
public class ActionGroupDemo extends SwarmImpl {
8 K( p% g& ]- j3 n$ m! D ScheduleImpl schedule;
0 R2 h% R" o. f, A1 j* g ActionGroupImpl actionGroup;
: F9 M7 G- d) @0 G0 a) T R: z ListImpl list;
# T, c4 @/ {6 W char Id = 'a';9 _* ]0 `" {0 l& @) K% J
, S' O8 p: F: h; `5 z0 W( b
ActionGroupDemo(Zone aZone) {
) E/ S8 H( t) r0 ^ super(aZone);
7 E+ F1 K5 g V8 f5 z+ e/ U- O list = new ListImpl(aZone);, T! R0 ^. W, Y5 T8 Y# t
swarmSetp();
* z* E# W0 m a0 Z$ c+ C: A actionGroup = new ActionGroupImpl(aZone);! T; `: g+ w5 w
schedule = new ScheduleImpl(aZone);
3 ?& v) A. Z y" \ try {
o; f( C I$ c6 x# J Selector agentSel = new Selector(Agent.class, "agentStep", false);
! s9 ]' m. ]+ T: W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 c( s, w& s b0 h4 a% b
# B6 d% O% ~& S
actionGroup.createActionForEach$message(list, agentSel);0 x# [0 s9 @/ B9 ?, W
actionGroup.createActionTo$message(this, swarmSel);
% R3 X0 p% q3 X$ Z. q schedule.at$createAction(0, actionGroup);: @4 U. v* ] B% c; k/ O# K2 D
schedule.at$createAction(1, actionGroup);
0 h- [" }" _$ R/ {) l! H& J schedule.at$createAction(2, actionGroup);, T* t- n% @$ ]) `! ^3 k0 n
1 K$ I9 ^) `. _8 |* M! t
} catch (Exception e) {
1 U* m5 L+ `: O, c/ X4 d1 u/ l. \% E1 Q e.printStackTrace(System.err);3 O! n* C5 V, Z8 p
//System.out.println(e);7 J1 C5 K! J4 c0 R
System.exit(1);
3 J2 W; c X- b' k/ Y# q }
" j- s, m( F [& ?
( x2 B6 I1 } x2 K+ b6 g% ]6 ?* ~! j* t$ U& l5 D2 f$ z
}. j, F' m% f: Z/ f' Y
' k3 T( `5 F, H& q
private void swarmSetp() {
( D6 D. {) I a list.addLast(new Agent(Id));" n8 ?0 S. R8 u
Id++;
! X4 v* S! t; k Q4 X3 A }
. H) N% |* ]9 L1 o6 k' F8 T; D& }( V; F* \* R" M! d K
public Activity activateIn(Swarm context) {
7 L9 i5 p2 k% f9 r! y super.activateIn(context);
: s. } d: v' k2 K4 x schedule.activateIn(this);
6 H/ b7 ?( ?4 n$ {; p return getActivity();) s# V5 I9 \+ l3 |
}
. g, w: J' Y8 @3 D3 m0 @3 X2 |, ~* b! R, Z8 J; d
public static void main(String[] args) {
1 E/ w) ], i0 K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); I( E+ o! G1 b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); }0 A- n$ O: G% g+ i
swarms.buildObjects();
1 l- t! @9 i, j2 i swarms.buildActions();
1 ~- k5 p% |% j8 c swarms.activateIn(null).run();! y: Z2 s. V7 Y e" O
}& c- A# h9 d5 n$ r' P1 l
" j3 _/ G# ~" i' R) |% {' F} |
|