|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* E4 w) _3 J" W6 }9 [+ J( \+ W3 w8 D% f' ~* M- X. K' N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% X: ]1 ?0 D7 Z, X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 E% o& D4 L' P( h" F) Oswarm.SignatureNotFoundException
5 n" q5 R% ^' F! U/ G) s, r+ s7 O at swarm.Selector.<init>(Selector.java:76)
& r- r G/ p& d- X* F; }! H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 `( y' {, |2 W; d$ x
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 S6 }' M- A1 ^ v( F0 @3 F
3 y" O$ L, v5 Y" l9 ~5 I: L& L( e+ b* w8 V v1 b7 u
import swarm.objectbase.SwarmImpl;4 Y7 \7 H; x( o* {
import swarm.objectbase.Swarm;
8 M9 y1 x( n0 W9 T$ P' ?" T) v. Dimport swarm.activity.ScheduleImpl;
9 s% o% F5 X, }import swarm.activity.Activity;. W/ y1 A b: p& h* ]6 D% L
import swarm.activity.ActionGroupImpl;3 d' b: a. l2 U) C# z
import swarm.collections.ListImpl;( Y& Q# q8 {* x6 b: R! d N4 N
import swarm.defobj.Zone; 2 k0 u0 z* O* n/ l7 ] @+ J% a
import swarm.Globals;+ N* f* W/ a6 S' f7 j' A
import swarm.Selector;# r1 b6 C/ }/ n- @
import swarm.activity.ActionGroup;
; }* w# z3 \) P. q+ q" [! }class Agent {
* Y( j. C6 M* B7 o7 E4 K. e" ` char id;7 W; ]9 c. o" _) G' X. P
& k5 c' n- K, W6 x3 F; v
Agent(char id) {
2 i, [6 s, x0 I5 d( }& W+ x3 u0 I this.id = id;4 \* v4 [' A2 H3 u
}; e: [: O4 m1 Z3 V3 K: I% p
. r0 r5 Z O! I1 w
public void agentStep() {
- G5 E' ~& B& v/ [- `$ z: [: S System.out.println(id + ":" + Globals.env.getCurrentTime());5 ^4 M q- H# n( ^6 p- U
} j% h4 r7 W" I
}
4 y$ Y+ V8 d3 p9 R7 k5 O
3 U2 s+ Y$ }5 Rpublic class ActionGroupDemo extends SwarmImpl {8 B0 @) @0 j+ u
ScheduleImpl schedule;( N1 A5 M5 a/ S2 v& p+ S, c
ActionGroupImpl actionGroup;- E0 q$ ^( c1 a1 ~/ {" Z
ListImpl list;
7 [& E5 D" W; Y2 I( W. U char Id = 'a';8 p! j- A; }4 F1 ~" I% }
# W/ s& C' p' `! u2 U# \ ActionGroupDemo(Zone aZone) {- P2 }, h- Z" k5 ^
super(aZone);5 @6 h1 p9 Q* Y& @: R" @
list = new ListImpl(aZone);: H3 [7 K$ R" n- P' g) R! o
swarmSetp();6 l9 L g( O5 m1 a8 e8 Z7 s, `+ y1 V
actionGroup = new ActionGroupImpl(aZone);9 h3 v* C, B0 W7 W5 J4 E
schedule = new ScheduleImpl(aZone);9 V5 D$ O, f( z! G! V
try {% d$ [) G+ r# [& c* T
Selector agentSel = new Selector(Agent.class, "agentStep", false);* W, r" q) p* t# d8 u9 j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, V: j6 |! x0 q" K9 O 9 c" q* u# c! j" ~9 P/ [
actionGroup.createActionForEach$message(list, agentSel);
1 Z+ [* j" G6 _; A' q' a, z2 E actionGroup.createActionTo$message(this, swarmSel);
3 e: F0 g) K; w- O schedule.at$createAction(0, actionGroup);
! p! [2 Q0 c! y4 j! @: q schedule.at$createAction(1, actionGroup);
% y% G, ` @+ h6 b7 G schedule.at$createAction(2, actionGroup);
: g5 C2 C* I1 Z7 G& s. M( t7 k" s! o+ x! l' O) g! j
} catch (Exception e) {: t# ^ V" q. k* q. A, t" b+ Y; B
e.printStackTrace(System.err);1 l: q4 b4 {6 D9 n( I$ }
//System.out.println(e);
( i0 H: C! F: S7 p' h System.exit(1);
( b( A0 y+ a$ V3 B }4 N: j/ P' Y. v; i4 P
3 `, m5 A8 P) s; v2 G0 f6 C
# A% z5 [% y1 i- c }; ^3 t' I. u5 E6 J8 J
8 t. D5 r5 ^& H+ u" \- ]' G/ W
private void swarmSetp() {2 E. i. ]- @4 e8 z: O* G6 {+ ?$ c
list.addLast(new Agent(Id));) S; ?7 c6 D" S+ g' J0 I, @
Id++;
. f* J. t- g) A9 `: {% n }# x% w' e4 ?4 D3 j& F! l, u3 D w3 ]% w
2 z, X2 U8 L3 @! l( c9 {* ?
public Activity activateIn(Swarm context) {5 O1 j: I% h+ K" L' h [1 u
super.activateIn(context);
$ T& ~; }; U3 l1 ^ schedule.activateIn(this);$ \& \5 v$ q6 k3 b. K4 S* @' R. y
return getActivity();
2 o6 D% q" q# s w) q2 ]( g; r5 T* { }
4 X2 Q" Y2 J0 o( _; Y
1 a& N+ {1 n3 u5 t& f8 w' K public static void main(String[] args) {) h' S( y+ R/ p1 A1 o3 w6 F' W. S: f
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* T* {) G8 n' a. u# e
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 M/ Z8 t" Y1 Q8 }4 G swarms.buildObjects();- [- x8 Y# j% J# L: H T* q4 U( v
swarms.buildActions();
7 u: R: g% ?4 Z9 S2 _ swarms.activateIn(null).run();. A2 |0 H% ~8 Z9 C9 j
}
W3 \' \9 E. N* @0 ?: H
& d8 ?+ X1 r, L5 A* j8 K} |
|