|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " _3 ?& y! r C* ?6 j8 S2 C& ~
3 B M; ? q+ \% e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, h) L. |! }/ D9 {5 p7 E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- X5 ?& y$ r/ k" O" A
swarm.SignatureNotFoundException
( I; t4 A0 j% |6 H& e at swarm.Selector.<init>(Selector.java:76)
, q' q" P4 d1 d0 @ at ActionGroupDemo.<init>(ActionGroupDemo.java:37), v1 I4 ^0 l9 U' I
at ActionGroupDemo.main(ActionGroupDemo.java:67); I5 y, h" l$ ?& k4 Y7 c# B# {/ F
0 K6 M% U9 T( i: L) p$ X3 ]+ ^) q. R
. f/ D0 T- `4 |
import swarm.objectbase.SwarmImpl; i5 `/ X5 H4 P. k
import swarm.objectbase.Swarm;
/ g; K. \9 T( h4 \/ u, t' I) Y; Ximport swarm.activity.ScheduleImpl;
( \' N1 M" s# |9 }$ J4 T- q4 f" aimport swarm.activity.Activity;! g% ~2 G2 A3 o" J& u6 E$ V! C" Z
import swarm.activity.ActionGroupImpl;6 b' _2 t% g/ p: c8 n; T
import swarm.collections.ListImpl;% e. e) a- b4 B: R' G+ h
import swarm.defobj.Zone; 2 e1 D! y; }8 M8 e& G" i Y) Y6 g
import swarm.Globals;3 {/ ~9 C' y: H" @
import swarm.Selector;
5 x& y+ ?7 o( @& X$ I: aimport swarm.activity.ActionGroup;
3 U6 D7 ]5 `1 U- c; i4 Kclass Agent {
# d0 S+ r1 A) l# Y9 E( ^3 V v* k char id;
2 Q7 o# y' W: z8 g2 J
1 R1 `+ J9 v) W4 Y* u8 H Agent(char id) {& M: B* w$ x8 k7 K( [" \8 E" B
this.id = id;4 ?9 b4 I; s) C$ X7 S. S2 |
}/ f) o6 S) i q# h6 [7 U
( h5 G- z1 U U
public void agentStep() {
5 s2 a. [) A) K5 a System.out.println(id + ":" + Globals.env.getCurrentTime());4 q" h% m& L5 C! H& L* J3 [/ h% f
}
# o' d- P" ^, o: V+ u1 U}
9 L: u7 b, q, [+ ~1 d: P
) N1 i( T& Y2 q: w8 p+ s( K& ?public class ActionGroupDemo extends SwarmImpl {+ X$ W% ^/ a2 K0 X; ` J
ScheduleImpl schedule;' b# s9 }6 P& r+ a6 I
ActionGroupImpl actionGroup;* P2 Y% {/ ^4 v, h) O3 r" N3 i
ListImpl list;
3 p/ M6 `; N7 k* B$ h char Id = 'a';
8 b% O& v- U* }7 r5 ~
: X! Z$ S3 s9 G$ ` ActionGroupDemo(Zone aZone) {
9 \/ }# M9 r# L. \% o super(aZone);: P3 S# y8 q- E" d2 z; i
list = new ListImpl(aZone);
2 \3 C+ ]+ f2 f' N% }: M# ? swarmSetp();* U' q- W/ o5 h) v/ }0 c
actionGroup = new ActionGroupImpl(aZone);$ c" ]* m! u: `4 l' A7 }! v
schedule = new ScheduleImpl(aZone);) R8 o8 v, T6 S2 S4 H* r
try {4 o; c% ~$ s9 b, \- p- W7 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);& i: \* f6 |+ s( N3 L/ R2 `" H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* i$ Y+ r: ?8 \) h2 P0 `
& u8 D6 z1 ~1 y$ h7 l# o actionGroup.createActionForEach$message(list, agentSel);* U5 O" O' r+ {! @, ]& |- d
actionGroup.createActionTo$message(this, swarmSel);
0 U2 v$ M1 y. c$ R. F5 R9 B( \ schedule.at$createAction(0, actionGroup);) Z! n9 v# T3 P: v0 G& q% H
schedule.at$createAction(1, actionGroup);
( ~# ], P0 C& m* G8 x5 q schedule.at$createAction(2, actionGroup);
# Y$ h1 O( S+ `- l" s) x0 E# F8 q* ?
# G' T- \$ f" l. x8 P/ k } catch (Exception e) {6 A$ C" [5 h* ?' C4 P
e.printStackTrace(System.err);- @$ p! w/ P0 F4 l% T- t4 {
//System.out.println(e);4 B0 D1 G8 a% y% s v+ w* _% W* r: {
System.exit(1);
: h' d ^" G1 v- Y }
+ d9 i5 I& j" T, r# \* S3 V* e: C
6 C' x( x+ F; i. `5 \
* m" H# t U; h( C6 ^( h6 i }
6 R s4 F. s) ]! W# [* O& R) A
8 {- w6 k6 D& L private void swarmSetp() {4 g( E! v, q, K- A2 K* L4 u% ]
list.addLast(new Agent(Id));, g9 e9 s" N& ]& M* I1 O
Id++;/ _; e* K3 I6 @8 R* ]+ w0 L; ]
}4 S2 _; K4 T' D4 K
0 i0 U8 Y2 L6 ^; }# T, p
public Activity activateIn(Swarm context) {1 S! B+ t/ N8 \( T. q
super.activateIn(context);/ F) J$ D- _7 m1 H
schedule.activateIn(this); X) M0 b. I2 E- x
return getActivity();
* e8 x- [$ R/ e, \+ j9 p3 n, i5 m, Q }
# P# _1 c* H" S1 a( {7 D" ~) B, Y C7 h1 D, M$ C5 J- F6 O. l) B
public static void main(String[] args) {8 z# [1 W c) P: ?
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; F7 W- I I0 Z( z+ z+ @3 o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( V6 q# L, H0 y6 B! y, ? B
swarms.buildObjects();2 N7 |! Q. h3 q; {' {
swarms.buildActions();! }; Y8 ?3 T6 u4 S7 C' K' n/ _
swarms.activateIn(null).run();: ^$ v: Z3 w; f0 a4 `* _1 o
}
/ k% P+ K! C9 T& L* g& B! X8 y# z
} |
|