|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ w! C2 c+ U2 {: o
/ {! q' g+ d& s2 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! D* W# H0 ` E4 g( R t5 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* O& G) C$ }5 C1 @! ?. nswarm.SignatureNotFoundException) W$ h. t; Q9 B V" F& C
at swarm.Selector.<init>(Selector.java:76)* m6 C' B: }( d1 I: h- P7 E; C9 {1 d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ S; x. F2 P9 K; C3 U at ActionGroupDemo.main(ActionGroupDemo.java:67)
" J% G; o I5 h/ m4 U9 g9 {2 v) R* N1 {$ p
" R1 \$ e; `& e2 jimport swarm.objectbase.SwarmImpl;4 S3 o8 S/ ?; q
import swarm.objectbase.Swarm;2 _9 n3 V! s" b# w
import swarm.activity.ScheduleImpl;) p" R0 J: H2 z8 p, ?. G$ U
import swarm.activity.Activity;) s2 G# w1 }, K8 _' Q
import swarm.activity.ActionGroupImpl;8 ?2 q+ h5 }8 H+ x$ c* ?
import swarm.collections.ListImpl;" ?$ v6 X; q- Z; q# Q0 k! ~
import swarm.defobj.Zone; + ]' |4 o% n: s; j# ^9 \0 x
import swarm.Globals;( X _: c% [8 ~% P
import swarm.Selector;
! j8 |/ U" g f& O! K& J9 }import swarm.activity.ActionGroup;
7 `* ?5 Q# a6 s, r& S, E y' }: o7 Lclass Agent {6 L1 ^/ O. s9 }, w7 A
char id;
5 m/ b# w. z- A" z7 \. P5 B$ h/ V. m V0 E: a* Z
Agent(char id) {' o$ H d: q8 K2 L- U% M
this.id = id;
@; F) T7 }+ U1 M }' O( o; q6 |+ r" O; ~% P2 \4 p
/ k/ O, c4 m: Z; l! s public void agentStep() {2 u1 Z9 Z3 z& A
System.out.println(id + ":" + Globals.env.getCurrentTime());
- z# X' x9 U7 z* O6 E: S" ] }
2 C; w2 {+ o, c) h2 }}" V7 ?1 y K4 }3 \0 c8 w
0 E8 _& P, ]( O8 m% ^. ~- P
public class ActionGroupDemo extends SwarmImpl {3 v7 S) H [; m; v
ScheduleImpl schedule;. c" S, m; h2 B* a2 @* r
ActionGroupImpl actionGroup;
E$ D2 o, O: ~ ListImpl list;! U$ H7 e1 W$ i C
char Id = 'a';$ D9 G, X* {9 B6 x9 e6 z! ?
) ~* d4 j. q3 P6 r( j4 Y$ C ActionGroupDemo(Zone aZone) {
/ Z, s" s: T0 e& m super(aZone);
- o4 _: ^" H: I0 r) W9 U x list = new ListImpl(aZone);
8 D7 ~. {0 I: a0 g! g5 _2 U swarmSetp();% d# B* l& {3 A/ v+ f
actionGroup = new ActionGroupImpl(aZone);1 Q$ Q# B, e+ T9 H1 C, g9 A
schedule = new ScheduleImpl(aZone);
I- F& }& Z: w2 ? try {
# S% S6 X1 L+ B$ `. z5 U+ L- u3 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 d( a7 k6 E6 f4 \8 }. b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! d% u* D7 \0 c5 j" @2 L5 e; E # x r5 M) u* d5 ]9 i7 H2 R
actionGroup.createActionForEach$message(list, agentSel);
$ ?& Y+ u4 z0 | actionGroup.createActionTo$message(this, swarmSel);
9 O" C! i+ p3 J" k: X; ]1 K schedule.at$createAction(0, actionGroup);
0 f6 K' q$ [; v: J. ~+ S+ y) i schedule.at$createAction(1, actionGroup);% K+ r; |. _+ O! m4 [. ^
schedule.at$createAction(2, actionGroup);
8 i, g, k/ a: i% G; O, z7 O
# j5 p' b8 X* G } catch (Exception e) {
) f% e' g+ u; r, o) B4 ? e.printStackTrace(System.err);
# u8 A# I& \; C( f //System.out.println(e);
$ A1 \5 I! u% z8 o9 E7 V% ?/ ^ System.exit(1);
3 X+ _& N/ g/ O2 N, k }
8 I9 t0 I7 Z3 j4 X- ~
! Q' q9 k0 K: R/ y$ E( r; D& c
: }7 y" i3 u! X) C } }- _: d+ c" Q+ i
( ^8 R" ~- d2 f7 k7 |6 I0 M" A9 ]
private void swarmSetp() {
- Y* Y' z, z, k. ~ list.addLast(new Agent(Id)); e( A; J. n; I% ?
Id++;
: k- ]1 G6 ~, f: d$ T/ Q }$ n. Z s# |9 A
& A' Q& d+ `8 b3 a public Activity activateIn(Swarm context) {
8 T/ c1 I ?& b. j super.activateIn(context);
* }9 c" L( z; m$ i$ H" e$ { schedule.activateIn(this);
0 J6 }# B: @( G2 v3 B return getActivity();* a; }. q1 m, T
}
5 z9 B5 |5 v+ X4 U5 H) {
" U3 i2 Y- p9 Z3 }- ?- b public static void main(String[] args) {
$ O3 E7 r7 H0 |2 t* C+ S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. F! Y9 @, S; E$ |2 L
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 d9 j6 ~8 |3 B" E1 G5 J0 D- `
swarms.buildObjects();; ^. J/ _# }4 m# P$ ~3 F+ _
swarms.buildActions();. }& t" T. u0 O$ j
swarms.activateIn(null).run();
9 k5 R1 {& v/ ^* Q, J; q4 {6 q }
: {2 U& {: i- a n6 v l! d6 s3 j( j
} |
|