|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 m8 B* k# z$ {& o. ^2 r, C
) W+ j1 y, G9 Z6 S$ M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 r/ \$ {# h% C! t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ n- }9 `/ W) ]swarm.SignatureNotFoundException
. t8 _( l* ]3 x! h: J at swarm.Selector.<init>(Selector.java:76)
) z# O9 H3 v2 B1 b% E at ActionGroupDemo.<init>(ActionGroupDemo.java:37). R8 Q3 ?+ A7 r% u6 _" V
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ I/ c* G3 E" O! e. U5 h6 n/ z- g; g! R
x0 U: x8 ^. [import swarm.objectbase.SwarmImpl;
& k1 T, ]9 i8 c4 `3 e Z: gimport swarm.objectbase.Swarm;
2 J# y# m& R& Z, w* aimport swarm.activity.ScheduleImpl;8 e4 G; j. B& a4 A
import swarm.activity.Activity;3 o+ b' [* V; {- a* c
import swarm.activity.ActionGroupImpl;
: N, `& [1 b4 ^ d1 I$ T+ w6 }import swarm.collections.ListImpl;3 O# d$ q _& g1 o/ M/ C. x9 U
import swarm.defobj.Zone;
) e2 U0 o* _3 d- Q: x6 d& r1 ^+ ~5 Ximport swarm.Globals;* J# }4 @# \% _, c7 k8 r" H9 [
import swarm.Selector;
- x7 R. n. |! S& a* Q# A& v2 {import swarm.activity.ActionGroup; ( S- C; T' u+ P' F' t
class Agent {4 _+ r2 J7 a, A9 c6 [$ s5 Z3 h
char id;2 d& E: A, x% a+ {4 v& C
' C b4 F% ^, Y+ s
Agent(char id) {
" x0 R- Z I' W4 C/ | this.id = id;6 F* n% D. D. |
}4 h) J) f- k: Y' U1 z" X" w
8 [& ]3 T1 O- Z7 h+ |3 g
public void agentStep() {) ]* H$ T1 _/ J. s: ~. Y% l
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 U6 _9 e4 h8 q& t- j }
, v7 A9 w2 ^" L% n+ d6 G; B1 E: E}
/ _' K& A# [: o G$ e1 x% m* ^& k) N
public class ActionGroupDemo extends SwarmImpl {+ ?' w6 a! j, ?) q. s8 C
ScheduleImpl schedule;$ } m y2 ]" F+ \
ActionGroupImpl actionGroup;! i/ f! U6 f( I- s
ListImpl list;
* Z" I' L$ n) { V& g! ` char Id = 'a';! @" R2 F! ^$ [% Z: Z# R
) C0 o: d! _+ T c ActionGroupDemo(Zone aZone) {0 O4 W2 v- q* S$ [8 s2 G! v" k
super(aZone);! \0 ]3 F/ s8 e0 H. E& {
list = new ListImpl(aZone);
% s/ U: ]( z& p3 ?0 f swarmSetp();
* u9 i, B4 U0 u9 Y! } actionGroup = new ActionGroupImpl(aZone);* Y9 n k1 I. l% f& d4 z) y
schedule = new ScheduleImpl(aZone);, @* l9 b, f5 R9 t' f' V4 l! v
try {
# U5 F! d, |" z {& J$ C Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 f, E& Q. }) x" f3 F v% A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( ?8 L) s& Q/ d ?+ h1 P
2 J. M6 e# a% S2 h6 W/ A actionGroup.createActionForEach$message(list, agentSel);
5 h5 M, A- i g& S+ X actionGroup.createActionTo$message(this, swarmSel);. ? Z1 S. N7 n4 Z0 _( h/ f
schedule.at$createAction(0, actionGroup);
4 Q- c" S! X. p9 A schedule.at$createAction(1, actionGroup);
8 C8 b6 ]( B p3 J( F' ]: n schedule.at$createAction(2, actionGroup);
; r! U8 S; p6 s( ^: N. K
8 W# X4 { |6 ?* N } catch (Exception e) {
r3 `3 H3 Y4 J9 @: n( @- u; N( ~ e.printStackTrace(System.err);8 E3 b0 R4 c8 o1 g+ s5 ~
//System.out.println(e);' U7 L- l: I# N/ t
System.exit(1);0 ^" n$ l5 f; n7 M
}; M4 R5 c) H$ j y/ b6 L( c
( A7 _2 w, E; K7 l, j# z3 a9 l w3 {4 m/ Z' n! {4 E
}. u. p8 W; c( N# K9 u
$ s- Z6 J* B1 R4 T- B private void swarmSetp() {6 a1 a7 C9 t. W- z: Z. c" c
list.addLast(new Agent(Id));
# n; p' j* i' V! _9 I; X0 W Id++;' l% M$ U- N5 j {8 d* f) s9 I
}
6 q2 R& J4 F5 p; K0 v, j) h+ _& w9 A5 K' u: @0 C# a& Q, F* x) `
public Activity activateIn(Swarm context) {
6 N) f; Y# z& a2 r2 ]( W super.activateIn(context);2 b6 S7 y/ }" p3 h+ q' X) ]
schedule.activateIn(this);
( c- p; h1 Q/ d6 g( i* g0 \ return getActivity();
2 b& K# [3 `% ]6 r }
+ {$ _# [' I2 V; u# `& i& Y0 [$ w0 ~8 q" x! @6 ]
public static void main(String[] args) {! ]0 g8 e* Y6 ~4 M" N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ n% t- K0 S [& o0 E4 E" P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 f! F) R. [3 H/ T swarms.buildObjects();- e; J& V8 U2 F. z8 q" S
swarms.buildActions();
- Y- T& }: `7 N. s5 N swarms.activateIn(null).run();
0 a. \3 @( L% [8 `7 ^7 P+ T$ N ` }
4 w# F3 m- m1 ~4 F! ^8 s* q% T
4 P5 N# i8 m8 V! i+ V} |
|