|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: i% ?3 ^* ~ N0 C) V/ Z+ l9 ]! U
0 H9 [2 t+ u5 H# O- m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ s! ]5 u4 ^4 H! i# Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% i7 @+ g8 w& T1 c' }/ w, r- f8 Lswarm.SignatureNotFoundException& u( w( y1 s+ X, O; y* ~
at swarm.Selector.<init>(Selector.java:76)
* j( ^6 M0 b" y2 o. W& i* n2 f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& k9 T, N0 V! ?% f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ G# j; {' E* `" c( E. y7 B" Z* M& s0 z- z
4 k( a8 s* T4 R9 @9 {" v1 Eimport swarm.objectbase.SwarmImpl;
! {/ M0 ^8 @; h9 limport swarm.objectbase.Swarm;
' @+ X' c' b& ^+ A* k1 w+ Oimport swarm.activity.ScheduleImpl;
4 j8 z: X6 f; n6 G4 Q* [( cimport swarm.activity.Activity;# b1 H) L" m7 N% a
import swarm.activity.ActionGroupImpl;
& y/ O, R4 F, ^8 u0 E5 Bimport swarm.collections.ListImpl;
' m" I5 ~0 l0 i* }) S* ?import swarm.defobj.Zone;
) K1 ^0 j) B2 D6 z b* L8 {) Simport swarm.Globals;# d+ p7 z* y L1 A: W1 c
import swarm.Selector;0 P: d5 S5 T* \2 }
import swarm.activity.ActionGroup;
4 g# r/ \' ^' p! g9 Aclass Agent {8 g& f# h0 @0 q- r, D- t
char id;
! d5 T; i) Y q7 U1 f8 v
* P: g6 \& i' o% ?8 ^$ `( N Agent(char id) {
$ S! S+ _* {+ E( _. K2 d4 q- f this.id = id;3 M" C+ S) z# j
}5 U+ [6 ?& L3 C" t( M3 U
4 ^8 i9 E8 h! A8 J) N+ ^
public void agentStep() {
+ B# c6 x2 V3 p$ O( f" k _7 T5 k System.out.println(id + ":" + Globals.env.getCurrentTime());% D, E5 X6 o4 V' h3 H; l
}
( u& K4 A2 O/ Q$ ?6 F& A6 P; A}
' V8 ?. z% X! f+ d+ Q2 J; B
3 W6 \1 h) I1 ]# q* s/ J1 j' x8 M" spublic class ActionGroupDemo extends SwarmImpl {+ a8 C6 ^1 O, `) U" u8 P
ScheduleImpl schedule;
+ \0 U3 Z/ L) P2 T9 Y! u1 q" l ActionGroupImpl actionGroup;
" w) Q$ x l1 i: r; V ListImpl list;
/ S3 g* ^+ [& w6 y8 S char Id = 'a';$ Q* i4 h) V: p' G6 r, g8 F. h
% P9 {+ Q: i9 W
ActionGroupDemo(Zone aZone) {( y5 e, t" n I6 m" ]
super(aZone);' b t8 s2 v: h8 C6 \8 w( _8 c
list = new ListImpl(aZone);
$ m% A, `# d) L2 L# |' ^ swarmSetp();
! q# X. q I. [; P# I9 u" W actionGroup = new ActionGroupImpl(aZone);2 q4 ~: e+ y( Y8 r) X; V
schedule = new ScheduleImpl(aZone);
Z' |% `! ~: P3 T g! f0 C try {( z7 [# x2 M" N( S0 E
Selector agentSel = new Selector(Agent.class, "agentStep", false);% E( B( q" U1 {
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: o- d9 H' k( u. }+ H3 J 6 F* t; K5 o! X: V% T* Y5 X4 M
actionGroup.createActionForEach$message(list, agentSel);
: a0 L: X+ L( x+ u$ M& s: w actionGroup.createActionTo$message(this, swarmSel);% A! e! {; J# r* T
schedule.at$createAction(0, actionGroup);9 o+ H( P6 B, U# ^: U
schedule.at$createAction(1, actionGroup); n6 M: M) E. [5 r4 J% O& K! S
schedule.at$createAction(2, actionGroup);: B+ ^+ E% I1 [9 j% w c$ x# Z
9 A4 D" g* T' B2 i } catch (Exception e) {7 _7 L! r, g1 R) o3 }3 o
e.printStackTrace(System.err);' N: `) L4 ?) e
//System.out.println(e);% r/ r6 v% C. x$ t! _# M
System.exit(1);
( V. Z& N6 g9 A8 p- f- w }6 s" L# O% T- ?* H
! n5 _+ K# c$ Q! K8 D( D' ]# M- b3 Y5 |, P" `
}
: F3 I' V* x: {' }. Q
4 @" q, Y3 k% \3 a private void swarmSetp() {; F! A. G) ?4 G+ o# L0 ^
list.addLast(new Agent(Id));
; A0 e/ W+ y% I# o& G Id++;
) @3 s, F- m8 M- y& Z) t" @ }
8 p ]5 o8 T' h; [) }7 z$ B) L0 U# Y5 G! T
public Activity activateIn(Swarm context) {
& b2 l; t) b Z' g super.activateIn(context);
6 a2 B) M4 A: c. J- h6 ] schedule.activateIn(this);# T0 Y% H1 `, V; [) ?+ c+ `" R: V
return getActivity();% W& Y) [6 T2 z6 Y ~( D9 y, u
}# J4 _! F+ ^* H8 k$ b, v
u {- y+ O' \* c& `* r0 w: V% J
public static void main(String[] args) {7 j4 d$ U+ I& g5 h7 t) T- C. _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' }9 e0 r. M( f4 C, Y+ o7 @9 b9 t. h% f1 V9 H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ @) B' I5 g* |1 _0 S* L, N* d swarms.buildObjects();( _+ w5 j; _8 w; [+ D* s
swarms.buildActions();: H9 S( q3 [* }7 I8 d$ O
swarms.activateIn(null).run();# R( l7 K+ e: H2 V! n: U- @' J c
}
9 l- x' ]- [& k. Y" j2 O# h' J
4 t% C; v! N' ]} |
|