|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* l( G( h% d9 c: m4 Y
) w9 [; @* e6 b) `2 E9 r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 q4 h5 f. G9 t, s. B8 h+ p c. f) c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. W3 h% v% j" e% }+ |
swarm.SignatureNotFoundException
! d& J& V @) W at swarm.Selector.<init>(Selector.java:76), C8 [2 [* X6 `( n6 X" P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& S. G' Q8 u C, A' m1 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)( ^5 p: A# Q/ X' V& ]0 i2 F
; ^7 |: n$ @) W, R' n8 R
6 q, R9 N& L. y' O
import swarm.objectbase.SwarmImpl;
$ M( k, I$ a! X2 m# B; Bimport swarm.objectbase.Swarm;
1 p( H& y9 ^9 x( k( g# k: H2 Fimport swarm.activity.ScheduleImpl;( g1 b1 b" Z3 r6 V
import swarm.activity.Activity;/ R# p; Q8 b0 L, [ H
import swarm.activity.ActionGroupImpl;
9 q8 L1 L& |- n$ r/ ^import swarm.collections.ListImpl;5 W K8 G9 w1 b: b1 p
import swarm.defobj.Zone; " d) S+ y2 l) Y- n! |0 E1 F& c
import swarm.Globals;& w& |& W8 n3 a' V
import swarm.Selector;; C7 I! j, ^. S9 ~; _
import swarm.activity.ActionGroup; ) X. p9 s/ p0 r) ?
class Agent {
; o" T; D4 P+ M( Q' |$ p1 q) d' v char id;- W4 y0 {7 {+ |( H/ I& s
, K( V1 H, m! b$ H: T7 ^ Agent(char id) {2 X, m: A2 r( v( D; I: ]9 B
this.id = id;
8 I+ _7 B5 K b$ O }
( Y. e& V6 z* z$ i7 W
$ N5 R5 }- j7 X% Z* L public void agentStep() {
/ s3 I1 @0 C- `3 L& e5 Y: v System.out.println(id + ":" + Globals.env.getCurrentTime());
8 I x6 R. {, {4 r# M }
8 N5 |" d/ Y% Y" E; x+ b}
& X+ t% V8 p( Z" a" q: ]
9 ^9 n* o5 Y. l% G4 D9 B, spublic class ActionGroupDemo extends SwarmImpl {8 Z( p( g5 u" T8 i
ScheduleImpl schedule;2 M) |, J: w! @; V1 {* c+ e
ActionGroupImpl actionGroup;/ n) z1 q" C. L. U6 y. G
ListImpl list;
$ y# w. g- ^* w( |+ U char Id = 'a';
, _' \ l E3 s( q6 _# q' R. P( K* e& {& I9 r5 v/ L- y
ActionGroupDemo(Zone aZone) {8 Z8 Z, j# K) H D/ C
super(aZone);% g/ B0 ?1 T+ V8 F
list = new ListImpl(aZone);
8 u) |" A2 K; K- D P swarmSetp();
1 p" I& t8 Y2 j" [ actionGroup = new ActionGroupImpl(aZone);: a4 a6 O+ _) M% P- v
schedule = new ScheduleImpl(aZone);
2 u- U9 n& c# {" u3 G try {
4 M" S3 \5 c0 F. P/ J+ J Selector agentSel = new Selector(Agent.class, "agentStep", false);
: y( V8 x3 A) J1 B$ y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. }/ X1 F/ |9 [# Z: C; ]
1 r/ H$ K, {* J* r% {
actionGroup.createActionForEach$message(list, agentSel);( D( A, l6 e( k+ [ s8 b- Q- i
actionGroup.createActionTo$message(this, swarmSel);
. V/ a6 g6 n( c( ] schedule.at$createAction(0, actionGroup);4 C6 \+ p% [/ t8 `+ \3 T/ k+ U
schedule.at$createAction(1, actionGroup);
- B4 O4 j5 T& m ~, ]: l schedule.at$createAction(2, actionGroup);% \( P, P! b* a" U& J7 L2 N3 q3 G
. Y! n, ]- }- f8 E8 n$ U0 I9 W
} catch (Exception e) {8 j* `+ _7 d( R7 {7 L+ o4 k. l
e.printStackTrace(System.err);
5 O5 {, R) S' r& X8 W* z9 \8 b //System.out.println(e);
# C) L' b4 B0 B0 j2 E. \ System.exit(1);* _$ ?3 f4 t' u% w0 [/ d
}/ l3 B( u' J) r8 F8 Z+ x P& D) r
! n- W0 d3 i* F
7 o" J0 v) R% q" M }- f' w" z1 T, N- p) S7 `- K
- L' U, ~+ O/ q/ P private void swarmSetp() {8 T) R+ q$ X0 w5 H' A0 j
list.addLast(new Agent(Id));+ c3 u& n3 A+ @* Q& ?0 X+ C; R
Id++;2 a$ B6 \3 F9 {) }! M
}
; O; E* w! C$ B$ U5 q9 s8 U m$ I6 w
: z% e$ L* ~) C public Activity activateIn(Swarm context) {) T* F: d+ |. F. @. [% T. F' y
super.activateIn(context);% m/ P* e2 b+ L$ H- i
schedule.activateIn(this);
; X" S0 q, V5 ~4 Z, X return getActivity();; I; U: c+ j4 D: |" t
}
+ ^3 |4 o3 l8 }) R! Y5 s6 u# y. b' [1 S5 u
public static void main(String[] args) {
& i$ h0 Q" |, ] Z: T, L1 L, `( { Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' i7 [# D- ~+ W; L
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
g" k/ K! ?( Q7 w; R0 S. L; e swarms.buildObjects();# h8 J' S0 l+ m9 e2 V
swarms.buildActions();: k4 }+ ]% j2 n# Z3 t* b8 T
swarms.activateIn(null).run();$ f) i- W7 f+ b$ p, L4 q4 h* F% k
}' g2 d- T R& R; U5 V7 O: B
3 {, f; `2 b/ h [
} |
|