|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / c) B% |/ o1 P4 y8 a! B! q e/ {
- V" f3 \" I! W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, B8 s& t$ X( \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ u4 q C, W `. H- n* ]
swarm.SignatureNotFoundException
+ K8 i' c+ ~" J: J8 M$ s5 Q Q at swarm.Selector.<init>(Selector.java:76)7 h; b2 Z- @& k# j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' _7 L, p5 P6 @# b* ~, S& l
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, l! C+ h) k& {" r* a! [
/ G/ y+ B6 r- o/ X% g, o( t1 Q2 O7 t$ W5 `; ~# T, k7 r% E i
import swarm.objectbase.SwarmImpl;. G% z+ H- r1 m" a+ o
import swarm.objectbase.Swarm;
% N$ a3 o$ P6 z# Dimport swarm.activity.ScheduleImpl;! A& M0 x6 n8 d, o. q5 x e! D
import swarm.activity.Activity;2 V; [, w2 i# r- ~5 L
import swarm.activity.ActionGroupImpl; }/ o( D& c b) v* n% n
import swarm.collections.ListImpl;
! I% z3 f$ B2 K& Q! iimport swarm.defobj.Zone; ) v2 F S8 a( ]! [
import swarm.Globals;
' f0 Y1 ^/ ?* c5 f" A$ i' x6 aimport swarm.Selector;) c) }) h; E5 x5 I" F& q: M( N3 a- w
import swarm.activity.ActionGroup;
, f" |- |; F2 C t# b+ i8 A8 Kclass Agent {
6 [+ X' W* U, `) Q0 m& k& g char id;
; B2 _) Q o7 H: }8 \4 d' N- Q
! Y" |# _- E& i) O4 a Agent(char id) {$ Z8 g: Y" d3 |% V
this.id = id;
# s2 ^+ h1 B( p }
9 c7 g$ ^7 d9 T0 g
V. i% ^5 F" p$ q. t public void agentStep() {" N" M# Y% Z' C2 {+ U2 z
System.out.println(id + ":" + Globals.env.getCurrentTime());4 X7 V8 g* h0 f0 W+ F5 N
}
- y' n8 {, L, n- ^$ e- T) |}+ B( E4 M6 w3 j7 v# X
0 ?0 i& N1 C! A$ c/ M; X
public class ActionGroupDemo extends SwarmImpl {
3 T7 v) A+ f5 b* v* @ ScheduleImpl schedule;5 Y# ^- n: e! e: C1 F4 |0 O3 M2 K* F
ActionGroupImpl actionGroup;: q0 t, X8 P; S8 h' g1 F+ ]
ListImpl list;
$ ^% d# ^$ M$ a( j char Id = 'a';
: F5 ? ~; i, U' C" R! x3 t( N4 f0 X" L& }# l# F( s3 @7 E; Q
ActionGroupDemo(Zone aZone) {
: o2 _+ a' Y4 ~$ _ super(aZone);, [2 ~( a0 N9 f4 T9 G1 l
list = new ListImpl(aZone);
3 F) e) ~7 Z1 S ], {( b$ ~ swarmSetp();6 ]5 ?5 J1 v! S0 z# r! O
actionGroup = new ActionGroupImpl(aZone);
1 F8 b; ~1 ^3 g: h* c4 a9 `+ Z schedule = new ScheduleImpl(aZone);9 b, i D) L' [" h" ]5 [6 l
try {- J! \3 K6 }* W% F
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 _+ Z4 k! M+ z$ V0 J5 ?" n% T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 K: `8 a$ i* x9 N - O1 D- v7 k4 V" u7 ?
actionGroup.createActionForEach$message(list, agentSel);2 \# L& Y2 ^( I" o! _
actionGroup.createActionTo$message(this, swarmSel);
' u H# b3 ^+ ]3 X6 t& A, O b4 f+ R schedule.at$createAction(0, actionGroup);
! H7 d. u; J1 A4 k( Q/ V+ _9 E schedule.at$createAction(1, actionGroup);2 @6 X' |( S9 b6 O
schedule.at$createAction(2, actionGroup);
! g6 e: {' @! V6 ]9 B0 P, S1 ]% |4 E
} catch (Exception e) {
( I$ Q* z* j$ a/ X* T( X- I5 [+ N e.printStackTrace(System.err);' u$ z1 C" B5 w, l" h
//System.out.println(e);# C {$ w S! J/ v
System.exit(1);8 ^; O3 P& ]+ J' ]& L$ K
}
7 e* F9 D+ z9 l3 [4 k- S5 J( J
0 x, E% ?3 o. Q# E$ t- K0 [# y1 [6 \' s* ^2 H: N$ U- f8 {- K
}
# v% t; m5 Y1 B% L4 g' S j ~. C$ z A9 H. b+ R0 b
private void swarmSetp() {
3 K& d; r' @! }* D% y* i6 T list.addLast(new Agent(Id));: g P) y8 B* ~* b- W$ J3 O- R( A
Id++;
+ U( d* x5 T: U& Y" a6 ^. X. | }
9 g( e% E; N5 H4 b9 d
, ^7 ?+ z5 ^) u public Activity activateIn(Swarm context) {# T* T- r/ ^, O/ P& m
super.activateIn(context);
3 [% c* _) \4 h% @, R schedule.activateIn(this);
6 O" P9 u& j; v* }3 r$ | return getActivity();
* t( J6 {& g7 C, h) r! s* p }8 U Y j; e9 m- M3 Z8 B p0 x4 \* X
: V$ P$ S& M5 b i5 d
public static void main(String[] args) {& X* k. Z& t/ B9 f1 Z% j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 S2 ^' ^" S6 Z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# B c- N5 h+ f& J swarms.buildObjects();/ K k2 A6 _1 m; {- x# m
swarms.buildActions();
8 D i( N( v. s0 [5 U swarms.activateIn(null).run();
r% ?, y" H- `8 u8 F }; G& ~" W# a3 Q( Q M: K* `
4 d6 b9 C H5 @! Y5 u& ^+ @
} |
|