|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& r0 x+ W4 H$ q7 ] z3 m* z0 X+ |5 @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; v0 w' A8 `- w- L7 K; T3 E E* ? O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 T u# o" F, B t# F
swarm.SignatureNotFoundException
: j5 y$ s4 o4 s, U7 X3 K$ B at swarm.Selector.<init>(Selector.java:76)+ }* L9 o/ R9 x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) P/ r7 p1 H: h, B0 p& V at ActionGroupDemo.main(ActionGroupDemo.java:67)
: X# {' u* e3 o8 s/ s# T0 ~( V+ @8 F: F3 J/ p ]& v
4 Y& v9 N5 w' \0 k* simport swarm.objectbase.SwarmImpl;
5 \$ E* _5 I& V! Bimport swarm.objectbase.Swarm;
7 |* A# q! g' I; gimport swarm.activity.ScheduleImpl;) l8 e* v$ ^+ L' x% l; }
import swarm.activity.Activity;
5 ?2 ~0 q& W. Simport swarm.activity.ActionGroupImpl;
U4 F$ I7 N. G) timport swarm.collections.ListImpl;
# ~! J( e, Y8 G6 \" }& y$ i$ Wimport swarm.defobj.Zone; ( R* \* l# Q) S/ x+ _5 S5 d
import swarm.Globals;0 c0 r9 R' @4 s1 i# p
import swarm.Selector;- \* n/ x9 p1 ^3 G: o
import swarm.activity.ActionGroup; , S; [6 ]9 F8 J7 j# n& g" G6 P7 Q9 I- F
class Agent {
9 ?; F R, l# q" t8 T w: [ char id;" ^ n! J/ N1 o' ^* j+ E
5 n; U$ z& Y7 J! F0 ]8 ] F
Agent(char id) {2 L% N W) Y6 ]5 j' E% }( M
this.id = id;8 x8 |+ T7 k% X7 u$ a
}
: o4 q! G2 K$ r+ o5 N" V" V
, K. J8 p" w4 B public void agentStep() {% e( B/ x* z; V% S7 o( A
System.out.println(id + ":" + Globals.env.getCurrentTime());1 \7 K% F/ w7 J: ?' E
}
3 ?" G" X& J. ~% `. `2 x. W}
0 b; R3 m8 S" C6 Y
2 o |6 T; @. p5 s$ Q" F# f6 }public class ActionGroupDemo extends SwarmImpl {
. |& |& p1 `2 x) e/ |9 E ScheduleImpl schedule;& V) V! c* m% N6 s7 V! H
ActionGroupImpl actionGroup;7 y9 m8 a' D+ S$ S! p! A3 H
ListImpl list;
2 O- d( [+ |* w9 S# @% i char Id = 'a';
' H: z7 |. ?* b4 y' o. _/ v# r: z2 z' `9 A' B; ~; {0 N
ActionGroupDemo(Zone aZone) {, Z) O7 ]1 T$ a
super(aZone);* u2 u3 I7 p1 j
list = new ListImpl(aZone);9 g; k+ y g0 Q- R/ D0 C
swarmSetp();
) P9 v) |. D7 B! s; z actionGroup = new ActionGroupImpl(aZone);
" }: c+ Q) Q- i) { schedule = new ScheduleImpl(aZone);, U% j- j( M9 l- p7 I1 ^
try {' { q, N* A0 P, L# L+ ^" p1 D/ n' N2 l
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ H8 |" y1 [1 k' `3 H# t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; m2 }6 O' c- M! s6 B
9 }# D/ U5 p; d6 W1 x) {1 C actionGroup.createActionForEach$message(list, agentSel);
j# `. b$ Z: F6 q- f; _1 l2 ~ actionGroup.createActionTo$message(this, swarmSel);
3 l& c4 \3 C9 `2 d) \ schedule.at$createAction(0, actionGroup);
; S" m! ^; b& J" ^ schedule.at$createAction(1, actionGroup);7 t7 Q) o0 ^! A$ q1 |9 Q2 t
schedule.at$createAction(2, actionGroup);
, f$ g K( T% {7 ?1 m/ C! K$ H2 y# G, m- B* X
} catch (Exception e) {5 b, r! e' o: G
e.printStackTrace(System.err);
% B& e5 F# v2 P% f+ t/ Y //System.out.println(e);
$ N+ m% [9 S4 ] System.exit(1);% B- p6 i$ }% p6 y- ~) R
}
2 C* b% E1 C+ i% d. S/ ?/ l
/ y j; t5 G7 x
, w- s I; O7 |, S) x }! r/ s- Z" G/ y9 T% ?! t8 K, j
8 Q9 H, y# n3 y$ a3 [ private void swarmSetp() {' q0 m7 R( c+ ^& R
list.addLast(new Agent(Id));
$ Z) W( o' g# b0 W8 t Id++;6 e8 V% u& }# ?, D/ W6 r8 P
}
: Q3 V) ?8 I+ \6 I% l7 f, ?/ b0 |6 M6 F: [) E* y' L) z
public Activity activateIn(Swarm context) {+ V( T4 N; d2 T, P. R" }
super.activateIn(context);
# _/ I# h( r5 U( ~ schedule.activateIn(this);2 U' S: M. l4 ~" b9 O: L. D4 {( \
return getActivity();
7 S# a+ m, ?$ A) q; {. e }
' A( g5 v+ J% t1 a
5 I u1 @# u7 V' l public static void main(String[] args) {
( l* G) _, S. [ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" Q2 d4 e$ @( |! e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! Y2 ^5 r' N: n- R1 @( g9 P
swarms.buildObjects();1 `9 O! L7 z3 l, S
swarms.buildActions();9 U, l6 x9 w' p
swarms.activateIn(null).run();
* x3 ^1 U# s9 _3 g% j* t }
+ C: q1 v% q7 D( U/ u P2 A [8 }) T
} |
|