|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / d; j! L0 Q! g7 D
; s/ r) r$ X" k; r4 G$ P# }" ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' g# }/ `) {) u8 k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 I8 ]' C6 L: J0 s, ^+ {
swarm.SignatureNotFoundException V# z! T9 A, @% {, m2 t
at swarm.Selector.<init>(Selector.java:76)
* j/ k# x, u8 G7 x! J' q X at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ O0 h3 |. n: x% M3 n( ? at ActionGroupDemo.main(ActionGroupDemo.java:67)! S; _- s3 q4 w$ b
0 r0 _) V" X+ J) l! [# N/ i
) w/ _+ |1 i* I; y4 x; J5 u( Dimport swarm.objectbase.SwarmImpl;$ [) F1 e- ^) k/ E
import swarm.objectbase.Swarm;4 J! U" f! | _+ V
import swarm.activity.ScheduleImpl;
* |# R% {/ |. W5 o0 fimport swarm.activity.Activity;4 }, T- u2 P6 q( N1 ^
import swarm.activity.ActionGroupImpl;. R$ d( O; c; ^7 X2 e
import swarm.collections.ListImpl;# g/ B* @, ], i) A; P
import swarm.defobj.Zone;
! i0 j( i1 O ?3 R2 @import swarm.Globals;& F l* {* M. S$ y) f# e4 d- k
import swarm.Selector;. I0 n/ j+ o" Y) C" l' H% c
import swarm.activity.ActionGroup;
4 h/ g8 m0 d: k2 b% Iclass Agent {" z/ }) W+ ?* U& l( t- @
char id;
/ Z% _+ N4 }4 j. T$ X/ \
* K9 S0 `. m, n2 a3 C) P) L Agent(char id) {
9 } V/ W( v! y6 _0 X6 j7 t+ W6 g this.id = id;# ?0 \) ?' D% c; ?
}
% L$ x8 S( R6 C3 |2 G
3 L& T( c2 A+ I7 f0 ]5 b: d) | public void agentStep() {& m5 @' K" i7 I- ^: g" n
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 J8 r& A3 U. v; Z }. k- f! p4 D7 }5 r
}) s. q$ T$ W4 b) P2 M
: f8 }9 F5 a: C+ I1 Ypublic class ActionGroupDemo extends SwarmImpl {) N y$ ^ ~8 _' X% r# n- u
ScheduleImpl schedule;
: C0 t8 j# n9 @5 H* ?, g, ? ActionGroupImpl actionGroup;+ T' a( Y3 X4 H7 O( h
ListImpl list;
/ x8 {* f, m* [' M char Id = 'a';
' u; r4 n5 u% \* m. I, ]6 h; q6 _# n6 R% n5 `( }+ W0 r
ActionGroupDemo(Zone aZone) {9 b' `$ r, p& i4 Y
super(aZone);
" A3 f. Q5 m4 u( }$ j3 \8 b) O5 p list = new ListImpl(aZone);0 C, [# L v0 ]- O
swarmSetp();( ~) ?* @3 J8 q) f
actionGroup = new ActionGroupImpl(aZone);# w4 p9 c; U' m& ^
schedule = new ScheduleImpl(aZone);& X1 l6 S2 g0 D$ F: v3 x/ p( _% s6 E
try {
9 n( ^) H3 n8 B3 v3 ]. q4 C8 [ Selector agentSel = new Selector(Agent.class, "agentStep", false);1 q, P8 a1 I7 n7 ?& ~% ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 C% A) R& o6 g' i
2 L: D2 S/ u* ], T* E3 D: W5 q
actionGroup.createActionForEach$message(list, agentSel);
, s( P& P, l4 k. i: |/ d actionGroup.createActionTo$message(this, swarmSel);
8 P2 R3 _* ~* p5 b1 Y; b( i' P schedule.at$createAction(0, actionGroup);. [$ P; a! S8 c. G+ c: Y6 X
schedule.at$createAction(1, actionGroup);; c9 c. `. y% V9 Z2 E) o; r
schedule.at$createAction(2, actionGroup);2 o7 J9 N$ x) Q( J* ^
8 p, k- E- ^+ X8 D- [; [ } catch (Exception e) {
; z! P2 q5 M) a5 a) Z' o e.printStackTrace(System.err);
7 a5 Y7 N+ s: i3 n& `" Q* H //System.out.println(e);1 f( T( A+ @4 E+ Y y) Z
System.exit(1);
# m4 y, w# C) Q }
@' C8 k! t0 w; w8 V
% k+ S, J5 D/ Y& E% q4 | l
/ S/ p, A# k I" G+ c F) F2 v/ S4 _ I& \ }
! B( }7 X) ]. z- @- W
; |8 `" Y' Y; y; [& B private void swarmSetp() {
$ @; {* ~+ |1 x! ]+ z! t# D4 ~ list.addLast(new Agent(Id));; i8 Q4 t1 b9 n2 b5 f( x
Id++;
9 R4 v9 h' L6 R! y }) U. Y8 Z2 V0 p8 b* r
, `3 X8 v$ U, N* F public Activity activateIn(Swarm context) {
" ~. ~7 g7 h$ C O2 G super.activateIn(context);
0 ?! l- e+ h8 p schedule.activateIn(this);7 E1 B0 ~" J* U. L0 C
return getActivity();4 M4 p2 c& s2 z# b
}
A& f$ a( ~1 A" r3 k0 Q! X% {4 Y7 c
5 s5 I: B: N* m0 Y+ j public static void main(String[] args) {
5 G( Y' T9 _- g Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" J, a, E! A' D- I2 C6 ~) G ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ g3 g3 s, H" o- z) r1 a2 a
swarms.buildObjects();
2 O4 R4 U) G. R0 {% E% \) }5 v, c7 P swarms.buildActions();
: N% Q$ Y' I/ |6 U( z; b swarms.activateIn(null).run();
; q! f: @6 r% z5 f6 R$ I8 V9 D* E }1 J* b( C- L1 x# J' c: \# w1 J) j
" i8 b( W8 K( i( t1 s. n5 e, f K} |
|