|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 V4 |7 L& |! v9 s1 U0 l% a
7 t3 I' r4 s7 E2 p+ R0 @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 O% o3 i7 \2 Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 n! l0 w$ n+ Z. q4 ` Uswarm.SignatureNotFoundException
F6 u4 @3 \* y" p! ^( ^, S at swarm.Selector.<init>(Selector.java:76)
D7 f& I1 w1 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Z3 i. v1 S% u
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- V9 h6 ]1 {0 c4 ]4 ~: j: @
9 I( E& M% V/ j6 R, o, w5 R
: `+ ^0 n, _) j p8 Timport swarm.objectbase.SwarmImpl;
3 U0 k$ p* F' [import swarm.objectbase.Swarm;
3 { |8 W8 I ~3 k* q$ }import swarm.activity.ScheduleImpl;
$ s4 B$ h% m/ qimport swarm.activity.Activity;
' E# ]( F3 E- @. X2 {import swarm.activity.ActionGroupImpl;
* S# c% d: k9 i9 q5 G1 G: l, M$ oimport swarm.collections.ListImpl;1 K9 ~3 J( V7 @8 x6 @
import swarm.defobj.Zone;
( [- s* a" a* D6 l2 ?( G: Oimport swarm.Globals;
b0 }) ?. o; gimport swarm.Selector;- ^* o; b5 ~% P' f4 z s
import swarm.activity.ActionGroup; ! s+ V- r$ Z/ i. s" F& X
class Agent {+ ?, K9 q( _0 u% F3 s% @
char id;
) H( c: s8 R" H% d) X f6 M$ W
! j# L7 a6 o) L Agent(char id) {7 C% ~% o% K& y1 B
this.id = id;
8 E( E, _& B+ q' ? }+ R* p% }2 C- S( u' [( A9 j9 u& K
- H' [2 q g \) i0 ^' u9 W6 _' J
public void agentStep() {5 G! q! X8 _6 W1 J& O d k
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 b/ c- W* D! b0 y0 { }
0 E+ V7 G& {: q8 l: i}* y$ W" E: d6 X$ G
& p# X3 ] }; `$ E" e' ^public class ActionGroupDemo extends SwarmImpl {
" h5 {5 K/ X8 R3 w ScheduleImpl schedule;1 W$ U3 z, A' r
ActionGroupImpl actionGroup;* g+ C1 d, F+ e2 p3 g% o) r
ListImpl list;
) ~$ I3 @9 \, p# f$ K, F2 L# z char Id = 'a';
# [. e' G* C# ^. |- o8 B, [. C
! N2 P/ J; Z- P x9 A* W ActionGroupDemo(Zone aZone) {
9 s6 W m4 K0 g- {1 g super(aZone);
, D. p- @# t/ R" I6 o5 l1 R! H0 d9 f list = new ListImpl(aZone);0 \1 i1 Y# j$ l
swarmSetp();
( q; u3 Y3 [# ^ G2 a actionGroup = new ActionGroupImpl(aZone);/ w0 e" X) p/ `& x2 @
schedule = new ScheduleImpl(aZone);
" q9 d" l/ U7 v try {# ?* }' J" e! O W' I: s
Selector agentSel = new Selector(Agent.class, "agentStep", false);( j* Z% ?. ]4 F
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 d4 A1 R6 K* ?! p
, F- X( t& j) B- T: B, b actionGroup.createActionForEach$message(list, agentSel);
7 H% M" T% U2 H$ t; Z9 B actionGroup.createActionTo$message(this, swarmSel);: ~' w: }: u5 \: v, F1 X. [
schedule.at$createAction(0, actionGroup);
6 E- p: {+ P7 C- ~$ e schedule.at$createAction(1, actionGroup);) v7 b' M7 F4 f# i6 N
schedule.at$createAction(2, actionGroup);
9 E/ k* d$ k; ?0 {3 x1 T9 _
# r5 E+ {6 u. \; P5 T3 M& c3 F } catch (Exception e) {/ D/ x+ S4 F* z6 i0 Y1 b+ a
e.printStackTrace(System.err); V; E M9 G+ X" [, U
//System.out.println(e);# p6 w1 A4 p, d, s) X+ j8 E6 `
System.exit(1);6 Q9 ]% l1 X2 b9 q# l: ^9 q
}
! B( B8 K: D3 a9 w% a3 }' x9 Q! @3 g7 l; q1 p# t
* n2 k. G6 o4 s7 U/ {5 Q# y2 a
}
x4 V# `' r+ h( P
' M: H4 S* S1 t' I1 M/ K" ^+ F private void swarmSetp() {
% ~3 z) r$ F6 D2 u" M, a list.addLast(new Agent(Id));
) r% `: n" g2 f+ U( }; s Id++;6 k; b# D5 }, V J8 I) c1 j" b
}
( b7 M; b i, J4 d# }' v5 u; Y. R
x! L7 ^/ |! y! X1 T: B$ ~8 y5 _ public Activity activateIn(Swarm context) {' }3 y) m& D5 e0 e' ]& ~
super.activateIn(context);
5 S& k- i3 v# C3 c' @1 B" A+ b9 D schedule.activateIn(this);
7 n9 g# x: Q: V return getActivity();& s$ L4 Z6 S+ t) G9 `5 w" j- o7 }7 C
}# v* D* F8 w7 h: n# J
3 l, _$ W! J' f) g
public static void main(String[] args) {
% k2 Y- k5 A' F3 ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: Z/ L9 X" {3 f Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" t* s: y+ D" T+ G4 E$ p& o swarms.buildObjects();
7 U9 E8 k s0 Q) u0 s swarms.buildActions();# b O; s4 k9 U' t0 t
swarms.activateIn(null).run();
# _) C; H9 I. H5 s- K2 c$ j }2 X* h! [3 q' L" [5 h+ c9 ?1 g% L$ n
! p9 [# g0 G# v) k9 ^} |
|