|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 ~ T+ D% A$ b- y: F4 e% e" F3 b# @
( e1 h8 D. }" v! h$ W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; M- a$ J& J I, s: Z+ |* m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ b# d+ U( u) A& L
swarm.SignatureNotFoundException
' V, I& Z* A5 I/ a# g- x/ B at swarm.Selector.<init>(Selector.java:76)* x- h* U& U" h5 f4 t u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" G' X+ y* k. m- h at ActionGroupDemo.main(ActionGroupDemo.java:67)2 l' y! Z7 E& E$ a! {( y$ _0 H; M
# M; ]( V; |* X6 m( O; I
* _2 ~0 n/ d8 \- q- I7 C% Wimport swarm.objectbase.SwarmImpl;' }& v/ R4 w6 E, C7 {( E+ ]
import swarm.objectbase.Swarm;" q+ w$ x+ X. `# ~ q
import swarm.activity.ScheduleImpl;
1 M+ |0 i; v& T& @! W7 p8 kimport swarm.activity.Activity;
9 |6 n) Z R, V6 r! o9 s- Oimport swarm.activity.ActionGroupImpl;
2 {2 |+ ?. K" Mimport swarm.collections.ListImpl;$ K; W- D4 O g% a+ ^
import swarm.defobj.Zone;
* c7 Y1 B; R) P2 Vimport swarm.Globals;
5 B" ]- N+ O9 H4 L: Pimport swarm.Selector;
0 b$ v; Z* q7 jimport swarm.activity.ActionGroup; 8 a* D$ ]/ |! r5 c) p0 C. C
class Agent {
& d" z4 a$ y6 N- i char id;
$ U5 U& F8 h* |7 ?, ~
( r% I2 |1 M7 A. E2 l& b) u Agent(char id) {5 w9 [' i( F4 P* d9 |" v
this.id = id;: V% @; p3 a+ q) k$ i
} Q/ E1 Z( }$ B7 B
, S2 C D$ C" G+ C n public void agentStep() {( h) |9 O. S: x7 \* B
System.out.println(id + ":" + Globals.env.getCurrentTime());) ?+ H+ g" I9 W$ E4 }
}7 L# O5 h* m _1 S4 o
}) U& k: W+ y: w0 T! l
. r2 Q, d3 P# o
public class ActionGroupDemo extends SwarmImpl {! i' c# R" K! c7 p: A: y( ^2 o
ScheduleImpl schedule;2 L% p% Q1 ^0 E/ b- k& L/ M( a
ActionGroupImpl actionGroup;" s$ r; n( j& m) ?! L1 g
ListImpl list;
) X3 t0 N$ e8 F+ x: @6 \ char Id = 'a';
6 Y9 O/ M1 b- d! Q
0 G& S+ `, h4 O' G9 Z. ~/ y ActionGroupDemo(Zone aZone) {; d. L, m5 _9 U- Q, B7 u0 t# ^
super(aZone);" W2 }! x/ U# e* d6 r2 S( C2 T
list = new ListImpl(aZone);
- N6 m7 Q: }; z, W) T* R1 | swarmSetp();7 \2 E$ k: `1 r6 s4 ~
actionGroup = new ActionGroupImpl(aZone);! R+ v+ Z7 f; h+ [2 G; \& t
schedule = new ScheduleImpl(aZone);
* p& H3 e, s0 t5 Z! s3 J try {
# L# P2 o! e7 d. b4 ~3 L Selector agentSel = new Selector(Agent.class, "agentStep", false);
: v( j# {# n' v# }( J Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, N C# Z2 u4 s/ V5 ~8 a' x % e2 z: v X0 [
actionGroup.createActionForEach$message(list, agentSel);
! o% e: A w9 l) Q5 t2 S actionGroup.createActionTo$message(this, swarmSel);) _$ P5 K1 T* a/ R% ^0 ?
schedule.at$createAction(0, actionGroup);
- S# J7 J9 b! E+ _2 C, }1 F- ~) a schedule.at$createAction(1, actionGroup);
7 J9 \ ~% A# ^; }. E- x# U* U schedule.at$createAction(2, actionGroup);
8 K! O/ q8 G' e5 _# c3 M6 \- ]8 C& M
} catch (Exception e) {
. }! y" E) ~. l) y( n# {5 x' K e.printStackTrace(System.err);( T, ~* ~) n G A
//System.out.println(e);# a4 r8 J+ c# F. [3 W8 U
System.exit(1);7 Z4 h5 c: r0 }) q; @9 Q" E* Y
}' L# Y/ }; v5 o3 Q! L4 M9 I
5 b4 J# J$ n$ ^- f) L
2 c5 U& n K' j) x2 o' R }( O$ ~, v O% c1 y8 Y3 n
7 w4 N9 L* V7 u' f1 A private void swarmSetp() {, y* S/ Y; o/ |; d y- A, s$ V
list.addLast(new Agent(Id));
: ~1 O0 N' ]; R8 M( a Id++;" N* j* M$ k4 R/ s
}
- }: M" J( E$ |! T9 I5 Y; P6 ~6 U
public Activity activateIn(Swarm context) {8 k+ m3 @5 Z9 \$ S$ D
super.activateIn(context);
; k' q* I2 ?- a+ r7 Q. D5 F schedule.activateIn(this);
# {& [! [9 g4 @8 V return getActivity();
; U4 h# L8 a5 Y; y }
* U9 M4 z% J9 {+ ?7 y. x8 v- o& t* G9 l7 }5 i
public static void main(String[] args) {
8 J( a5 F0 [" \9 V: O- Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# P- L6 W- y3 q: m0 n: V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 @! k. O8 |* @+ W/ g* D, l( B
swarms.buildObjects();/ D1 F. i4 d; ]5 \7 j
swarms.buildActions();3 E; O% P7 z/ _7 S/ \
swarms.activateIn(null).run();, H) `; ?2 Y6 H# l
}
9 p* Z: I7 r* X5 ]0 f
1 Q6 l% M$ X$ [8 s( D} |
|