|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) o& L0 c* F- ^/ z B; V+ Y% V- z9 n
$ F Z2 U; U* k3 E) g6 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) g: @" H+ G0 }& N* @! Q8 [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ A0 W" N9 C4 J. T$ y- f( L
swarm.SignatureNotFoundException. d5 T2 f3 B) v2 b: x
at swarm.Selector.<init>(Selector.java:76)
, A& d% i0 Q. S, B5 ~) Z9 w; k: C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ H& x5 [1 ]3 ]3 h9 q at ActionGroupDemo.main(ActionGroupDemo.java:67)
* x" I3 R! j% R" m/ g( c$ ~4 ]+ R6 s4 g- \( p/ A
7 h) I2 d7 [6 e
import swarm.objectbase.SwarmImpl;
; z8 c. h8 `- k( ?. A! _: E Pimport swarm.objectbase.Swarm;8 a9 F) S) H% l& m6 K
import swarm.activity.ScheduleImpl;, w( `' o+ o' h1 j3 s5 v) j
import swarm.activity.Activity;/ T6 o0 \8 m, a' Q
import swarm.activity.ActionGroupImpl;2 t8 s Y' p+ M. d8 R8 `4 y1 v
import swarm.collections.ListImpl;
; Q- m/ x. Y$ j; Q3 p( _# h: vimport swarm.defobj.Zone; 0 t6 e+ O; x* x. I- R$ ]/ W
import swarm.Globals;8 L% A! I) |5 W) g4 c! y3 y
import swarm.Selector;
# ~4 l. \7 x8 w, S8 ~& @; ^) F3 Eimport swarm.activity.ActionGroup; & ]0 h+ ~2 l: N d1 I
class Agent {9 Y. d. C8 k' u3 Q8 Y- o
char id;
( J$ P. Y5 E7 C' A3 L( P1 M+ S, u7 g* D: d: n7 P
Agent(char id) {
2 q- `' M/ @( P1 G M2 v this.id = id;
" ~+ }, }; M3 p+ ?# Z* A5 w. N0 H4 Z }
5 A# j2 ^* O3 a( V
: V+ W0 G3 }, J2 D4 J! V5 u public void agentStep() {- V ?& Z& k8 x0 t; X+ }1 _3 ?/ a" s# B- c
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 ^7 y' _- I# v& O4 g }4 R( r* E5 o: j
}
* t& x/ O) e" d# V8 V" Z2 S& T( c: a% o- S" K1 {7 l* ^. v" f! ~
public class ActionGroupDemo extends SwarmImpl {
2 J# i A( `$ g) O ScheduleImpl schedule;
+ t6 w3 A# e- @$ \, O$ _" J; A ActionGroupImpl actionGroup;, B4 S0 L* U/ i+ ~) G% R
ListImpl list;
* `( b$ e ?' u' p! r/ E$ H char Id = 'a';. B y: V3 U4 j5 L4 r' V' Q8 N
6 ~! F. D; f' D; n- P7 J
ActionGroupDemo(Zone aZone) {& W. H/ e+ n1 P6 y/ I9 G& @/ E2 D
super(aZone);2 ?; b9 B& L ~1 Z; d$ D- c# ^# v
list = new ListImpl(aZone);6 X/ S- v4 w, @: x
swarmSetp();5 b+ _" ?* Y: T( K2 W+ L$ F
actionGroup = new ActionGroupImpl(aZone);1 \9 p! H5 `* A7 K4 A" H g
schedule = new ScheduleImpl(aZone);
8 R$ l9 z$ L$ ~+ Y. ~2 c try {9 l7 f! `# m0 b
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 S$ C& ]. a/ G- u1 l7 K/ G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% t+ T: c' Z1 i; {/ K. ?
6 _2 M0 O/ h) m! {/ A T1 p actionGroup.createActionForEach$message(list, agentSel);
2 M, O5 _' a" u9 ?4 B8 v; l actionGroup.createActionTo$message(this, swarmSel);
6 T/ k# z' \# T2 C9 T, u) B schedule.at$createAction(0, actionGroup);
' Y1 I2 K. Y2 O4 x% N1 o+ R schedule.at$createAction(1, actionGroup);
9 y! @! l% q* [; w0 B# \. l schedule.at$createAction(2, actionGroup);
; {. ~2 Q) Y' H o% t6 M
2 h4 f6 u; ]" ?+ x } catch (Exception e) {$ W+ V1 Z" s5 ?
e.printStackTrace(System.err);& z. m" |0 C* N; F5 _
//System.out.println(e);
9 f- E+ E3 K' N, |% L- |4 z o System.exit(1);: N e7 ~( V) B% y! X3 t5 u) ?* T, _
}
# s6 y) Q! @3 N5 t& h, |' a4 h: z7 Y) `
) `5 B* ^9 P* S- Q4 y }
/ [/ i' X5 r: I; @) d/ z. {" X4 X' e6 x8 d
private void swarmSetp() {
- ?) ?% C; c; m4 U list.addLast(new Agent(Id));4 ^" q2 N8 Y! q8 b3 ?7 D! a
Id++;" \7 c5 l2 v3 |/ S" I
}; @+ I6 b, d6 n9 k& m. h/ g/ F) _5 f7 O! B
" ~8 ?% W: W; @3 L1 ~! ^1 { public Activity activateIn(Swarm context) {
' E/ B+ _/ R+ e$ o7 k1 t super.activateIn(context);
8 N1 |- F6 e l1 [8 F schedule.activateIn(this);. o. A/ _, U8 m/ e* _
return getActivity();
& }8 i- z1 U- | w; m' J }. ^& B% `: |$ A3 Z3 p# k8 ?* {
( l& b- h3 V5 D m" Z public static void main(String[] args) {
! d5 g$ N/ x3 S9 Y! o0 q; g6 d Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! T- |9 C& C5 h, E Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# H5 m$ v5 }; m swarms.buildObjects();- W. I$ K9 J! `" B! ?- T
swarms.buildActions();5 x/ h% P) t# H, d. y
swarms.activateIn(null).run();
+ i1 Y4 N% b# I9 H( G7 x/ } }
' U, R3 @5 h5 Q. X; s( {( G# U/ X0 b8 v2 x" ~
} |
|