|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " p0 v2 @% P# l" X, I. r
9 W1 t' t( H* o( m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 E- ]; X+ m- l) P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( w- I" g7 @6 |' B
swarm.SignatureNotFoundException2 `+ U; G7 L' l6 i4 \
at swarm.Selector.<init>(Selector.java:76)2 i6 w* S) l. \% t' m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 B" ?# n( G# e$ u' Y$ V2 Z. S; ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 X8 i' I/ @) E0 B- M2 J- ?
9 ^2 b; H0 W4 m! f
; ]! v# Q7 W1 t0 q( Eimport swarm.objectbase.SwarmImpl;
# ?& K2 p: K2 e- m. T# |3 ]1 nimport swarm.objectbase.Swarm;
& w+ X0 \# q2 e7 |- L! ~/ Mimport swarm.activity.ScheduleImpl;& ~3 M1 s* D) Z7 X! b
import swarm.activity.Activity;
* k; e) W9 y, u" U4 M% _import swarm.activity.ActionGroupImpl;3 j3 |2 l" Z) l- V: }' n4 W4 S" Q. \
import swarm.collections.ListImpl;
" h7 j! [' g8 G4 C2 }/ m' Ximport swarm.defobj.Zone; % ^9 M/ t% x$ L; |
import swarm.Globals;
" H0 S' L# y; ?9 Y" M4 w- cimport swarm.Selector;
0 ?: A. L( H" v- F" Qimport swarm.activity.ActionGroup; " E* C/ _, P$ { B4 b9 U
class Agent {. d- u$ }! P7 Y. } c
char id;, U1 V, Y8 C, W* a+ d* E
3 g6 s4 Y+ r3 m8 z' Z9 s$ F Agent(char id) {0 ~! h3 t3 e2 |1 U9 ]
this.id = id;4 l4 n0 J/ e1 a/ \' X
}
; {6 O) c! I: a, M t
6 o+ z# e* z+ `: G7 \ public void agentStep() {1 d: z0 r$ y1 _7 _9 s
System.out.println(id + ":" + Globals.env.getCurrentTime());$ [; B1 m+ N/ w% Z
}
3 H+ y. Z- P0 |9 c8 B} L- I+ q" r# y4 O. k/ y! t* ~4 u
" [9 t @/ S* L) y3 v/ ], f. ipublic class ActionGroupDemo extends SwarmImpl {
: c3 a1 v" n5 `3 e$ u4 t3 u, y" c8 B ScheduleImpl schedule; `6 V2 g: t y' v+ f: v
ActionGroupImpl actionGroup;$ d; R$ |% \- M0 a
ListImpl list;
: v/ w" \/ C1 M- }0 { char Id = 'a';
1 K/ ~( c3 h, i$ T% I- m5 U
5 H* a! }6 S, m) v& } ActionGroupDemo(Zone aZone) {
0 C, x8 g! |9 l! [/ L9 |; T; M4 y super(aZone);
( n& I% W4 G' ^6 X# d ^ list = new ListImpl(aZone);- k. A# k, @. R, q; i/ P- N
swarmSetp();, `% o, e, `% y7 r3 W3 z1 e% K) t
actionGroup = new ActionGroupImpl(aZone);
7 ^0 g* i, {$ z$ \ schedule = new ScheduleImpl(aZone);; ~4 d6 J1 X& X- z% X. T) \
try {
' N2 f: v) o& \4 V4 k+ t2 [, S* D$ b Selector agentSel = new Selector(Agent.class, "agentStep", false);% U, K+ t+ Q# t* t' X* L' _( [, U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Z4 z3 O" b6 |+ ] 1 C( R0 `% E2 |4 U7 J5 G; Y& ^! c4 P
actionGroup.createActionForEach$message(list, agentSel);
5 _/ o, a5 V( { actionGroup.createActionTo$message(this, swarmSel);
) t4 ~7 d5 C: s8 R schedule.at$createAction(0, actionGroup);
4 H! C; E7 t. K& p7 j; t1 ~4 E5 s schedule.at$createAction(1, actionGroup);
& m. ]! L6 k/ z. m9 e/ t: l schedule.at$createAction(2, actionGroup);2 x. W$ z" }+ \6 C) `
! d' a7 S9 H( P% ]( S } catch (Exception e) {. z: E" O) ^8 ~$ H" @! {) f! ?
e.printStackTrace(System.err);9 d) i8 X6 v% p- e. A
//System.out.println(e);
2 E5 d9 K" ~9 \- ~9 Q System.exit(1);
4 V4 U% n) m z3 O/ F5 z* T6 s1 T }
. W8 c, e. C% }5 ~ N ? b3 C+ W1 ~% ^4 R$ Z: z( u
. {3 T! j: A- b2 D9 F9 z }# E. I2 t- `# w) }
8 S. D& s/ F+ L: }3 M* m private void swarmSetp() {
4 K1 B/ J1 g9 l- S1 [ list.addLast(new Agent(Id)); z& f! `: u# p# f; x
Id++;
. s' A7 w, b e: k; F' t }
[0 @2 D0 r h; e2 Y7 p
# X+ j& A+ m$ z7 o/ ?: T public Activity activateIn(Swarm context) { |8 ~) ?' E8 e. Q' f) @# h* M
super.activateIn(context);
8 j i. h# k M( h/ ^ schedule.activateIn(this);
" h0 g5 I) y+ a; q# A return getActivity();: O$ [$ p6 Y; x& ^
}
8 K" \" V, y# I+ \9 a2 C. b( m! }9 T3 e) b2 G" j+ I Z* e: s9 G
public static void main(String[] args) {
3 A0 O/ r8 E9 N. h V! o9 d& {; M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
f* M& g2 e, e& I4 x8 Z+ l& w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" V, o9 j; m5 W
swarms.buildObjects();
6 k- i8 V' b) b5 N# m. T. I2 } swarms.buildActions();
9 ~" l# Z0 u( Y; [7 V' f+ }8 {: Y3 ] swarms.activateIn(null).run();+ L2 c( ?$ o9 F/ P' W
}
9 h$ _( S( l3 H. ~: |9 g8 d, T% j
. `7 `% {7 h8 { Z# W E* O! ?; D} |
|