|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ E$ ]. e) W/ J8 p' k3 V5 Y" d
' s5 t% m E& L& Y7 ?5 Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# f2 s1 p7 p9 N! q4 C6 X7 V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) ?1 K2 [- v, \. X. O& qswarm.SignatureNotFoundException# d% B' F! H y1 K
at swarm.Selector.<init>(Selector.java:76)
, i+ f# j5 X/ A- {& p4 a2 P, } at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! y! h' c7 W% K, j& o7 T2 @ ] at ActionGroupDemo.main(ActionGroupDemo.java:67)- o0 G* t3 L; H4 W4 |6 d3 R8 ]. p
6 i! ` E" v' S0 g+ k! T. e8 i- x) O: P# l% ?
import swarm.objectbase.SwarmImpl;% n# a* g/ \$ _
import swarm.objectbase.Swarm;2 k% `$ ~. o/ I( ]6 L# t) Z, m8 H
import swarm.activity.ScheduleImpl;
. F/ e3 w! U/ f U; s0 v$ }import swarm.activity.Activity;# [2 \: I; s( |8 ^* G2 L
import swarm.activity.ActionGroupImpl;
- I- n6 a' W0 r ~9 Gimport swarm.collections.ListImpl;' \: ^! q7 a9 n- {: R1 \% \5 g' H/ s
import swarm.defobj.Zone; 2 W2 H# U' v' r* T% f5 J
import swarm.Globals;% G, |0 u0 n% v/ ]" p
import swarm.Selector;5 _2 I6 U9 R" Q* Y
import swarm.activity.ActionGroup;
( h4 q7 G/ y" W$ d) J( ]) L& hclass Agent {7 |4 e: b3 ^' O b! h
char id;
7 M) l6 _8 e# b) q; U# f' t
' e. Y, f/ n+ `, e9 \: ^, ? Agent(char id) {
, Z; Z& ~5 W6 m2 K9 ^! H) h this.id = id;9 }; `# A! ]( c7 q' `# k+ W
}- w' Z6 O; h5 w) n
% D- u1 @$ f3 v7 Q; |4 C; d
public void agentStep() {' @8 {* J( D2 Y
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ J5 ^6 t1 m, y1 D; E }* b9 L z. q) k( ^5 E, p+ B
}
. U) p7 B% w0 z' Y/ Q2 _: O' t1 q; e4 o3 A! e# m4 o/ J+ |: C
public class ActionGroupDemo extends SwarmImpl {
( ^$ J6 L' i2 i3 p& h) } ScheduleImpl schedule;5 s' o1 n& u9 p* z1 p" x: }
ActionGroupImpl actionGroup;
2 F8 p: ]/ [& u6 V! L' z$ U W ListImpl list;: l* U0 r( k" L/ l
char Id = 'a';
5 w: w( E3 m8 g: r6 p1 i4 _0 |- n) ]8 g+ l, v t Y# b" U7 ^
ActionGroupDemo(Zone aZone) {
) {* L) Q& Z" D* @2 L6 j5 _ super(aZone);
; B0 q/ i9 u9 g% O% m( N+ K list = new ListImpl(aZone);
. J! `& M$ e% ` swarmSetp();- t V. F9 D S3 b; [6 p
actionGroup = new ActionGroupImpl(aZone);
7 r" F' }( a3 a7 p: M schedule = new ScheduleImpl(aZone);* r2 O9 ~: T+ Y' c8 U. \! S, x% J
try {0 X$ @4 I6 O7 ~ I
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 O! z5 V( N/ A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 P. e* i2 J2 r7 V. B$ {
4 Z9 M" } r9 ` actionGroup.createActionForEach$message(list, agentSel);
* L' H, r" r9 ?( p4 V actionGroup.createActionTo$message(this, swarmSel);
' p. f& ]+ @: g9 E9 U. s) S schedule.at$createAction(0, actionGroup);9 y$ I7 I9 G# I* L& B/ o- `
schedule.at$createAction(1, actionGroup);
0 w+ \2 T5 X$ B9 ~$ a schedule.at$createAction(2, actionGroup);
/ e2 C4 K/ j* n; Z# w7 M" l6 C. E6 Z. d
} catch (Exception e) { t4 m4 C+ A7 F" \- H
e.printStackTrace(System.err);
+ _5 t. @4 T' k& P7 _5 ?. z //System.out.println(e);
1 s+ g- ]5 L5 ]. L System.exit(1);. R! o3 k% @" W7 w% s# O
}4 ~8 s6 @7 c4 v
2 ^2 f+ |, v6 Z) N& f U0 Y/ F
) ^5 `+ B t% A0 @. ~8 S }8 l6 Z$ [1 Z+ J
" j" F: p8 ]' M& l6 W) b
private void swarmSetp() {
) J* m6 z8 i0 g1 v' r: u$ S list.addLast(new Agent(Id));
* L/ P& }6 J$ }3 K3 s Id++;3 S9 r0 _% z# t0 G& s$ F% q
}
; Y, c4 h6 K& ^: f
, m2 o1 b Q% y; B( l1 W i8 O/ q! F public Activity activateIn(Swarm context) {
* B9 |5 a& B# V3 D% F2 n% O super.activateIn(context);/ G! ~1 J8 n: X5 I2 e' a
schedule.activateIn(this);
8 K; I/ I+ w) }( ^' U' b! H3 p return getActivity();
" z, A7 J2 V. P& L }" a3 [% |6 `& e! x- a0 e
9 \- |, F* `) X6 Y% a, {, p5 G
public static void main(String[] args) {
: n: W4 `1 }" f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 m+ ?9 |5 `' R+ C8 h; g. r0 v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* c* J- ^; W& B' m) A- ?
swarms.buildObjects();0 F; n) f2 |0 I! @, i( t8 m
swarms.buildActions();
{0 }9 A4 d7 S6 l swarms.activateIn(null).run();
/ Z" |' C' W: k$ @/ z }
( j- P6 N: c6 y4 e/ k
9 t' G; i) o- s- L) {' L2 W4 m} |
|