|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! P% a6 h% @( ~4 l. h
; R* t2 [! N: J7 z4 |0 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 s( ^: s6 R! Z+ c3 {; f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ y0 z: Y: M% k* f' k+ M# uswarm.SignatureNotFoundException
2 C# P( b1 T; P at swarm.Selector.<init>(Selector.java:76)
+ O" ~2 a( D# P# E2 i2 b& S2 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 m, F1 a5 S! B* `$ z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* F4 R3 t8 W9 f" _. e
U% y$ W' a0 C* @6 E9 S( w+ r9 G) K w$ `9 E$ v7 _. a
import swarm.objectbase.SwarmImpl;; M$ i2 b F- O5 J9 t
import swarm.objectbase.Swarm;& t" e0 \1 Y, e
import swarm.activity.ScheduleImpl;$ S7 ] f7 J$ Z& b5 c6 x; i
import swarm.activity.Activity;
- b# \4 G. y& S2 \* o' p1 rimport swarm.activity.ActionGroupImpl;
4 X( X( s3 Y; ~# V' Y) aimport swarm.collections.ListImpl;
# \/ Z6 Z& V" w- v2 i; w; d) eimport swarm.defobj.Zone; 1 O! `( p* q" ]1 y% c' K- L
import swarm.Globals;' J/ h# S2 m# O& L
import swarm.Selector;
( }1 E9 L; g6 _& G+ @) q8 [3 vimport swarm.activity.ActionGroup; $ m' M" d+ O8 ~) O7 g$ L
class Agent {
& K) G, G, W3 R$ { char id;9 \# {4 w4 l' J" U& y
1 o6 X6 r9 B0 C. z" \ Agent(char id) {& [: A, | }# H1 w' _
this.id = id;% D) m, r5 X2 m0 [4 C8 _$ _
}
6 K$ R; f+ I* ]7 V6 r4 K6 f" @5 K, F. K. _" ]: v4 F- u( D/ ]9 P) W8 b
public void agentStep() {
5 e8 W0 K- R# s, z: c; U4 g M System.out.println(id + ":" + Globals.env.getCurrentTime());
! G' S9 R+ j2 ]* } }
& K a/ O' c- ]6 o, U8 [}
3 |' O9 G# d, P+ V2 b D I
& b4 X$ P5 F1 E( U9 {8 C9 W3 \: Vpublic class ActionGroupDemo extends SwarmImpl {
2 l5 c" R7 _, J" I ScheduleImpl schedule;
3 V% j+ U% S# A2 z% Q7 u+ N+ R ActionGroupImpl actionGroup;; t$ }. t* O% y' e& ]
ListImpl list;" q) m k( v9 ~' C* y9 B
char Id = 'a';1 q& ~' t) H/ b6 }
8 a3 U- k( k; \ ActionGroupDemo(Zone aZone) {
8 [$ a* A5 U- Z9 {/ P( s super(aZone);
% F- a/ C+ Q4 {1 t9 j( J list = new ListImpl(aZone);, C, C# b" h O
swarmSetp();% Z7 S W1 ^ D% x, b: L) B. l
actionGroup = new ActionGroupImpl(aZone);
% q1 |: ~- R9 V0 W! y schedule = new ScheduleImpl(aZone);. J0 E! |, p2 M
try {* q# t _. P& _7 T6 i; {' w3 I1 [
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" x$ n& b2 `6 { T& d, \5 c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 k9 v9 w% _0 K
8 F2 y2 w7 v! @) N7 |8 x0 b
actionGroup.createActionForEach$message(list, agentSel);' k0 z% a+ ]9 }
actionGroup.createActionTo$message(this, swarmSel);8 E" w: N' ~" k. s: Y) Q0 A3 B
schedule.at$createAction(0, actionGroup);
: y- e% E3 D0 [ schedule.at$createAction(1, actionGroup);
! V" Z. x: p5 y( ?; t schedule.at$createAction(2, actionGroup);5 w* y& s5 A9 A5 S C
- X1 `- o5 F5 M
} catch (Exception e) {
! A; ^$ ^' Z- W* B5 X& N e.printStackTrace(System.err);
; w3 p$ r- v. h0 D! o //System.out.println(e); x% @. i- \8 C( z$ L, }5 i5 F" T
System.exit(1);$ J- b& f* L/ P2 J! x! J4 |% Z
}$ P6 J* E1 h7 y/ i# A( O
- s% |; H% Y6 h& }. h7 Y
' a& a% X: u7 J5 o }
2 H- N; L* v" u4 s$ ?4 Y9 h6 m+ k% r8 M
private void swarmSetp() {9 u& z0 l, @6 _( x
list.addLast(new Agent(Id));+ V, t; n, q" \2 m
Id++;
1 e. x, O) r B( ~4 E% i- s }
. I0 Y' \$ k" o
6 Z; A: [, W" \5 }- y public Activity activateIn(Swarm context) {
9 c: P" { E C, Z7 o1 Z super.activateIn(context);
1 f& c/ ~4 Y4 n% B schedule.activateIn(this);
$ G5 a8 B8 ?% ` return getActivity();9 T$ ]7 q$ w7 D; [( a( B
}( V d4 ~7 L n! Y4 n9 B b
6 m. ` [4 K& s/ @# r$ E) i6 u' W' ] public static void main(String[] args) {
; @, d3 V4 s7 d6 }9 i4 {: }' I Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: N% y- Y' p1 O" @! N# V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. O, f+ v/ G* Y# d
swarms.buildObjects();
( S3 W" b8 a7 _5 ?4 s swarms.buildActions();) ?1 q" n3 V. g1 k" C/ t: h# \
swarms.activateIn(null).run();
4 G+ A5 ~5 W$ [4 ? }
8 ?5 K, O) t' N% @
6 W6 j+ J. g3 l; A( j" i} |
|