|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / x# s. g! Y8 S' P1 [, T5 G% W. q
' `5 n# a6 n& `% U1 f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, E6 a# ?; B* W! J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 n$ s. O9 Y6 d a& [4 K1 {9 gswarm.SignatureNotFoundException
- u4 q2 R8 H8 W! x. Q at swarm.Selector.<init>(Selector.java:76)
/ E* |- V: G3 Q7 w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" u! l0 \2 T) A
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( f8 w; h! P7 F$ E4 [- X [- P9 \% U% K8 b. k6 D0 Q
1 q% C2 _- A4 {; @5 }
import swarm.objectbase.SwarmImpl;
$ K7 |5 @- t7 e k. ~+ ?import swarm.objectbase.Swarm;
/ x, d: I4 V+ ]& |import swarm.activity.ScheduleImpl;! O% O+ a3 d; G1 h0 V3 q8 c( t* `, x
import swarm.activity.Activity;% E `- ^( p. d, U3 v
import swarm.activity.ActionGroupImpl;
6 f! m$ V m7 g. j% mimport swarm.collections.ListImpl;& i% q/ R: T( ]! z( y0 w8 O$ K. X
import swarm.defobj.Zone;
w8 d _9 y* m* v' _( _) Fimport swarm.Globals;& J4 a2 b1 Z, w% J2 m7 U! @
import swarm.Selector;; w5 P; y8 H6 }7 ~/ h. t* J4 d
import swarm.activity.ActionGroup;
: n- ^- r. R$ _9 K+ t" W i1 _0 lclass Agent {
) z' \5 P" { n) M0 [0 Q char id;' K% Z* y& q- o0 B$ B P
v9 L9 q% j" ], m; x
Agent(char id) {! j: E# w+ H A
this.id = id;
' N6 G6 c0 j( Z7 [6 t }3 Z+ X: f( t% A8 T
% b2 r( l, N4 m
public void agentStep() {
1 x, s" z6 e7 K! Q6 `1 f$ o* | System.out.println(id + ":" + Globals.env.getCurrentTime());
+ M" H$ S$ c' O! e( Y& i& B }
' {+ d* R9 X1 P# S& q}$ M7 K9 l* {/ X& a
9 |0 B+ R, {+ m. I6 f, rpublic class ActionGroupDemo extends SwarmImpl {
$ d; p) o0 D. z5 t, ? g: h ScheduleImpl schedule;
8 ^5 J9 r0 W! T$ k) |! ~ ActionGroupImpl actionGroup;
4 B- S" a3 D, d& _& H ListImpl list;8 y- H$ y$ V9 A# n& y( A Y/ E& a n
char Id = 'a';, I- s1 t) v0 {9 n% A
% s! }8 M) ]% o; i
ActionGroupDemo(Zone aZone) {* I7 x i% p3 X; A
super(aZone);
, U. g, k5 V5 j3 l list = new ListImpl(aZone);& H) w3 l2 [( b1 v, w1 |
swarmSetp();
+ q. P" r' ]+ T' I' F5 V+ E, q actionGroup = new ActionGroupImpl(aZone);
* p6 O+ Q% k3 p* m schedule = new ScheduleImpl(aZone);
, r. m% K8 G9 }2 ~; \ try {- j5 R j7 Z9 [4 u# w& E
Selector agentSel = new Selector(Agent.class, "agentStep", false);' o' G# ]6 t/ V' I) p/ H) N- r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 A$ K- Y/ c) H3 {8 g% D
, [& |+ O) b9 O5 V7 C; k- L; S
actionGroup.createActionForEach$message(list, agentSel);
+ X; \0 t+ D/ g! p- Z) Y actionGroup.createActionTo$message(this, swarmSel);$ L) i# t6 O; Z$ _+ C# g* L1 |
schedule.at$createAction(0, actionGroup);
; z* T3 L1 b' N& U# | schedule.at$createAction(1, actionGroup);) T, S7 u3 H" T& F+ H3 c/ w
schedule.at$createAction(2, actionGroup);2 i" H! O( m% O. n
5 T& Y. j9 p% W$ I# A } catch (Exception e) {
7 y5 b1 ?$ |8 p* o7 v5 Z6 N' j e.printStackTrace(System.err);* _0 Q# a4 H1 D+ o% ~: W$ ~
//System.out.println(e);
( F5 I n; N' x8 k7 _, `0 r3 p System.exit(1);
% w3 |6 E2 ]- t: F }
; V/ L: \2 s4 V, t4 p7 q9 k& {
7 ?, [% P5 }; P$ m- G- U1 N$ a: T9 U& ^' g/ X
}0 u$ A c$ ?. j* T
) e: x7 w8 s$ l5 B1 |0 ? private void swarmSetp() {) A. x: A' ]% r# K: R" a; d
list.addLast(new Agent(Id));
$ z2 E2 Q" g0 c2 p J+ h) _ Id++;& _4 h/ [2 a+ ?. o/ N
}
3 _7 n3 l' `+ h4 B
+ |0 [3 A7 v( h' R public Activity activateIn(Swarm context) {
$ M I! Q7 j, [: W1 O3 F super.activateIn(context);* V- Y2 U0 E' Q" _! P/ U! a
schedule.activateIn(this);
. i0 U2 x8 Y' k3 S+ U1 p* x5 u. d return getActivity();! U' R- l( _! z' S: L1 @' {
}
* E" B9 |+ m9 o* ]+ X9 r5 ?2 V, M" E8 @5 P; X
public static void main(String[] args) {
3 J4 R, d! p, ]4 v! d; @- } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 a/ C/ d9 }+ q, X4 r' P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 C5 C* a) i4 ?( ]& @, y! k; | swarms.buildObjects();+ h$ O% D8 H5 U! _
swarms.buildActions();
; x# j& x/ ?4 {/ ?% V% { swarms.activateIn(null).run();
* ~+ K& A* v# S9 ^2 z0 E }
2 i) ]8 _# `. E( t6 `/ j7 z/ ^5 J" Z. n1 ~" A3 Q
} |
|