|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 m" K* }, k0 q( y- e. ]% D
3 w0 `7 \: X: h* I5 F: g" Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ k; a2 b n$ |# |' _& D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ T- L) F; ?3 O: w6 D+ Gswarm.SignatureNotFoundException
$ g0 P/ ^# @6 T at swarm.Selector.<init>(Selector.java:76)
+ q2 z) \$ d4 \) S, j8 U6 { at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- K8 }. l4 [( p" }9 P* D at ActionGroupDemo.main(ActionGroupDemo.java:67)8 B2 s: j; f8 u+ N& _+ k
/ e! X: ?. D( f4 M' V/ _, |4 o6 m1 z! f7 D
import swarm.objectbase.SwarmImpl;
4 f$ H: C1 @! z2 m2 X9 O* iimport swarm.objectbase.Swarm;* \3 m& ^5 A2 ]+ h3 J% q, I
import swarm.activity.ScheduleImpl;- G- c" W: a# U: N
import swarm.activity.Activity;- B7 I& i/ i4 }" e% R; L! V
import swarm.activity.ActionGroupImpl;
, g9 o1 s: Q& O9 i, s# oimport swarm.collections.ListImpl;
# D& p: `$ b6 y. h; S, S; zimport swarm.defobj.Zone;
! ?# M" Y O/ A/ n. jimport swarm.Globals;: Z }3 ^* y; I+ \; g, K
import swarm.Selector;/ r2 G8 Y5 _" u: g! p/ _$ j# l6 e
import swarm.activity.ActionGroup; $ I2 |) {/ g/ n. n- X9 s
class Agent {# z8 I* J8 n' }, f
char id;
. m; J9 A9 R* _9 Q N- U& P: Z# w" X
Agent(char id) {% _, C$ w5 g \) T) c$ u
this.id = id;
) w4 m/ X8 Z0 f# `" R$ Y) [ }
: N: T8 w% a6 h
6 _; r4 f ~5 d$ r8 |5 ]( r public void agentStep() {
& V" V: m; a9 n2 T System.out.println(id + ":" + Globals.env.getCurrentTime());1 Q/ Z) F7 Y: m ^/ t! ~0 s" g, j
}+ M% p- Q V' B c9 h- P, h' Y8 g4 V
}. u4 c9 S+ v- g6 A2 ]
. i0 q6 N2 R2 O) r! M' u& q( T( Jpublic class ActionGroupDemo extends SwarmImpl {
- o. a3 ~2 E ]6 ^( ]# B ScheduleImpl schedule;2 ^4 l+ [. m! S2 t. o
ActionGroupImpl actionGroup;* D$ j7 c+ r. u) k$ x% g
ListImpl list;: L: v: P f: L
char Id = 'a';
; \8 }0 W+ Q8 h/ n! i% F7 m$ }3 i; O j9 E7 e- j$ a: Y
ActionGroupDemo(Zone aZone) {
, s2 P% E \3 t super(aZone);
* s' k; q' A3 [1 [) P, a: Y. k list = new ListImpl(aZone);
L( O7 B* Q5 D! \1 Z- K swarmSetp();) Z- k2 x: q! q% e2 c; t2 t& w
actionGroup = new ActionGroupImpl(aZone);* |' c9 K m0 S3 U. @; j& P) f
schedule = new ScheduleImpl(aZone);) s, D; r! u) W$ ^
try { R7 R3 V" X2 E# g6 @1 S
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 z4 C- ~9 s) T/ N) B# p7 s$ P) M; T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 w- @3 z' c$ _
2 r% q- e4 T$ S% n$ a; X) b actionGroup.createActionForEach$message(list, agentSel);
! }3 ^( ?( Y9 G/ `) R. l" ?! L actionGroup.createActionTo$message(this, swarmSel);
8 I! L/ N3 M8 t+ d% d schedule.at$createAction(0, actionGroup);
' [: b! P+ D* T h- H- q. T schedule.at$createAction(1, actionGroup);
, `( E( ^! Y9 S) D# @ schedule.at$createAction(2, actionGroup);" K0 B/ Y3 P4 ]- o" F, t
/ d% e( g+ J. F( [6 P( m! H G7 Z& C } catch (Exception e) {6 O# ~* k" A: A+ c
e.printStackTrace(System.err);
& w' q/ i" m* F3 n1 ~ G, G9 \ //System.out.println(e);
2 }* c2 }' k( P$ F- [+ T System.exit(1);& O3 j) K& ~ L/ s* e
}% k6 a( f/ @2 r' a
T1 `- y+ I' O% G
( |7 }) ]8 g4 ]- @2 M }
$ u" I! j D+ [. K: n+ W
0 e2 D! M. b3 d6 h" b+ M: {( I$ [ private void swarmSetp() {0 a! r# c- u9 t2 g+ g+ ]% n
list.addLast(new Agent(Id));
1 d) u. d w1 Y: X0 t2 h( n% s4 c Id++;
# G1 i0 K* B1 o/ W$ @5 `0 Y( O }, o& f! ]4 I( s4 y' W D8 J4 D
) r. z1 L! K# L
public Activity activateIn(Swarm context) {/ d0 L, d* e/ D2 t+ I
super.activateIn(context);
! v% Q6 _0 W" V schedule.activateIn(this);0 n) y3 ~* h& T/ o! S& C
return getActivity();
# Z5 H5 p& ?2 p4 f' o8 F }' M' B1 x, e1 j! C9 [
& U: J8 P1 s- R% t
public static void main(String[] args) {2 @# {5 L7 P: S- ?* [ c9 P1 C
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. ]' z4 s' d Q3 E# V/ C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 g% R' f" h" |* s! {' S
swarms.buildObjects();
1 J9 H2 z( K9 ?6 I4 W) X1 @: D swarms.buildActions();0 ]9 b; H" P: \$ O" ]' {
swarms.activateIn(null).run();
# y! Y# a9 J' j* M- B/ M }
& r6 H3 C* u! U; D$ Y: P. B) k& F! y$ } w/ F
} |
|