|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* M8 ], ^5 l2 X0 ~$ C" B
7 y8 v1 D% B4 d# y( H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( B2 b2 U) I7 a0 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 j! s, H. P- M5 r! j& q+ i6 Dswarm.SignatureNotFoundException
! Z" }, e' b# @! f at swarm.Selector.<init>(Selector.java:76)
{; W5 D: \/ K% H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 S' X' }. m( B. R% q' G) g+ u at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ @+ [, z+ u( L G: N) S* K" i0 b. M b1 q# C2 p% G/ g" \+ B
! G: P( u i: r/ O" R+ S* c% `9 Yimport swarm.objectbase.SwarmImpl;
' ~& J# p6 n8 l5 V yimport swarm.objectbase.Swarm;
2 m1 z4 ~) a/ f$ K0 b/ Zimport swarm.activity.ScheduleImpl;! ^5 U0 |/ Y. R% C# p \% G
import swarm.activity.Activity;( v6 {9 o1 D3 R% @+ e8 C) d, ]; b/ _
import swarm.activity.ActionGroupImpl;+ X. H5 I& |; d2 ^; ?) i; N
import swarm.collections.ListImpl;
: s; k4 Y* E, D. a2 P' [4 }+ \$ kimport swarm.defobj.Zone;
+ q; U9 T7 r% @import swarm.Globals;0 p: L: f2 R8 ]6 ]
import swarm.Selector;
9 F& V, T8 A' P, }* K Z ^import swarm.activity.ActionGroup;
& F: h1 C3 q. T$ l4 ]! yclass Agent {3 U# k1 p* m" C, z7 c
char id;0 `$ t6 J+ Q& T, y
2 R o* l- Y5 f- Q4 W) _4 i Agent(char id) {, c! J2 r; h8 D# ^
this.id = id;$ I5 X4 u1 D# x1 ~: N0 H
}
/ d7 W D1 p; p0 C" D7 V
$ f* U7 F# ]; @2 ^6 s public void agentStep() {
j3 ^8 }8 `1 r- T) _ System.out.println(id + ":" + Globals.env.getCurrentTime());
0 j( K9 r7 P, W }
! P$ Y8 [- L. K}+ D3 R i4 U2 I2 _+ |! w9 W1 _: K
% E. l/ i! C# \6 P; l
public class ActionGroupDemo extends SwarmImpl {
) T& `' J. y7 ^5 ? ScheduleImpl schedule;
# ?9 S, {8 N2 U5 t5 ~& o) x ActionGroupImpl actionGroup;3 I( Q5 e7 w. l5 P$ d" j
ListImpl list;
& X& ^2 k t: z- ] char Id = 'a';
D: I" p' ?: s2 i* I; `$ p* \" _; J* w' J' W! F( S% j
ActionGroupDemo(Zone aZone) {8 @! v8 n) N- U' K5 G3 S( o$ e
super(aZone);6 I( a( P, x8 ?/ L8 p
list = new ListImpl(aZone);
+ c, O% z4 d+ Y& r9 L+ ]1 e* i! C2 R; ? swarmSetp();# Z2 U, Z F4 c/ ~1 C. _" Y- f
actionGroup = new ActionGroupImpl(aZone);2 k( y; i9 d a4 m9 K' g8 c6 X0 H
schedule = new ScheduleImpl(aZone);4 y- B3 ?$ i1 z, U1 D) P
try {
! N9 O0 h. y+ J9 Y, X$ a+ i% Z8 c Selector agentSel = new Selector(Agent.class, "agentStep", false);' ~# K+ m; f2 Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" S8 L$ U$ F; G 9 _8 l+ A2 C- y- z2 [0 O& N- p
actionGroup.createActionForEach$message(list, agentSel);
) m5 G$ B+ i p* k actionGroup.createActionTo$message(this, swarmSel);
4 I* ]$ f. f) m9 f! k; f schedule.at$createAction(0, actionGroup);
4 @: E4 I3 b0 i% E2 u9 |$ k schedule.at$createAction(1, actionGroup);
* p$ F4 t" D& d8 c% q schedule.at$createAction(2, actionGroup);
! \( Q6 w. z$ l$ X% k) L$ w
7 ^- t! s9 B O } catch (Exception e) {1 D! d3 c% Z/ j2 c
e.printStackTrace(System.err);0 d; q! U% f9 w1 d2 {0 `' w
//System.out.println(e);
: I" m. ^" @3 i, p4 a System.exit(1);
& w0 o; L- H) o* W) P6 w }$ o) P: ?1 d+ t. X
% X# N5 J, Z ~2 `- Y
: i5 P4 X$ Z' q! F }
( P5 a2 [) O, {) w' W; T0 O1 i* Z4 p& p% i3 \1 u1 }8 T1 H7 q) h# V; L
private void swarmSetp() {, p3 ~2 |0 J7 b. |# D
list.addLast(new Agent(Id));# f5 H0 d t" {; J6 x
Id++;
3 X' b3 z5 {& L% M( t }
3 \) f0 J# C/ G/ N4 z7 l% Z! P# [2 t+ z
public Activity activateIn(Swarm context) {
6 f! Z4 f& P3 [+ V0 w$ P super.activateIn(context);
+ @( z% o1 U! K8 _; T schedule.activateIn(this); _: u! Y( ~, [4 J7 H0 d! l
return getActivity();( n1 q1 ?" x) M( t$ z
}
~# t! i! c0 T7 w2 f+ y
3 g" Y6 R2 I8 Y w5 z public static void main(String[] args) {
6 n ?6 v" a5 P9 [$ q8 N* n- p& G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
b" ^& k h2 D+ {- z, S1 k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 o5 o+ a( M1 l1 ~( h6 q2 {7 ?' a8 Z
swarms.buildObjects(); [( u8 k. e! Q, c1 ~* X, b
swarms.buildActions();
6 a& T0 ^' p6 k# J6 P8 b6 t swarms.activateIn(null).run();0 n1 k" p' \( r0 G. x2 }0 S
}
( x* i$ {" E I& b" v. V
; Q& H8 _8 |* T% G8 E; ^6 B} |
|