|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) r( ]3 l2 u, b; E, ?- I
, S i" n! e+ W* {& N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 O. n2 M( {% |0 P' L' t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 V0 w" x O/ Q3 k' R) K" P& f. |
swarm.SignatureNotFoundException" g* ?6 h7 }' o5 Z* ~: E& J
at swarm.Selector.<init>(Selector.java:76)9 X/ E) ?; r- f' }4 Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ L0 m" }: w' _6 e! W at ActionGroupDemo.main(ActionGroupDemo.java:67)2 K! W8 h" Y; R3 h
$ Z5 q, |6 l# A# O. H$ s5 i8 \$ Q# v0 z
import swarm.objectbase.SwarmImpl;
% u% N) e1 p1 T4 ^- X Iimport swarm.objectbase.Swarm;( ?. }4 f$ L6 V" z% }
import swarm.activity.ScheduleImpl;
" R S" [- u' W: S# V) b. vimport swarm.activity.Activity;
/ r+ r/ _6 X7 eimport swarm.activity.ActionGroupImpl;0 h6 X$ @* F. [; o, d$ F; ]
import swarm.collections.ListImpl;% x: w% m9 u: i5 _1 t
import swarm.defobj.Zone;
' o7 r3 f6 @: P! L2 c) wimport swarm.Globals;8 a9 M; }5 W- M7 q$ y* F
import swarm.Selector;% S' o9 c% S i" K) w6 K& w5 Q. b) C
import swarm.activity.ActionGroup; , H. {( \/ ]) n# r/ j( d$ j
class Agent {% k2 d! f$ i+ A. w% V9 a
char id;
5 O' ?. N! `0 i( B
* ~6 h. b( A4 F) ^ Agent(char id) {& v, f% a8 T. Q( w/ J
this.id = id;
% z: y% c7 x- u/ L }
% M' y( g! q; |# M
8 ?, I% P" ~8 ]+ ? public void agentStep() {8 k! ], Z/ q p/ P4 a3 s
System.out.println(id + ":" + Globals.env.getCurrentTime());
- K" O( }% `* `. B( b6 [ }4 N! p+ N! w5 v$ c: v3 C: {
}5 w( N5 i: b E7 N
% |4 b! l+ t3 [: Hpublic class ActionGroupDemo extends SwarmImpl {
; J' d5 m- K: }7 t$ O, c ScheduleImpl schedule;
" t) I- C: h# O: `- s7 S1 ]( y ActionGroupImpl actionGroup;
C r, c% ?: p9 ~8 J4 P1 ~ ListImpl list;
6 w) M5 n0 F" n2 B3 e$ j1 _' R char Id = 'a'; O& V. {. O4 c+ B
% [2 g) x4 ^+ D5 @) g: U& H
ActionGroupDemo(Zone aZone) {
- ]: b# ?7 h# c6 X* D# G A ] super(aZone);+ z( f7 F/ G. A" p$ `1 E1 C
list = new ListImpl(aZone);* R" x$ B( Y0 P4 I: X8 D, H$ z1 ~% m
swarmSetp();
5 R' t: }# K9 o- ?+ E7 e7 M: l actionGroup = new ActionGroupImpl(aZone);/ u. `$ B+ ]8 q# F" F
schedule = new ScheduleImpl(aZone);" m7 r- E# h, Z2 }, V% |& q
try {+ j2 j$ ]5 Q& h \# L |
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 U: v% w. c: w- p9 T7 f6 O4 X" t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' n' V. ?' l3 v2 |" c4 t v) b
' a# H/ A; ^6 Q f actionGroup.createActionForEach$message(list, agentSel);, z. F) v" Q9 V$ U B
actionGroup.createActionTo$message(this, swarmSel);( a. @# {. L6 T" G* B2 w+ h+ b8 H
schedule.at$createAction(0, actionGroup);. a/ L& t( J" y
schedule.at$createAction(1, actionGroup);
w7 w1 B2 m! S; | schedule.at$createAction(2, actionGroup);
4 R* ]- l& \# y& M6 \! n
2 i0 L9 q& A. Y. J' @6 A4 m+ T1 J } catch (Exception e) {. \3 Q; T, c$ d# ]2 O
e.printStackTrace(System.err);3 S! t' i. h, f! H* [
//System.out.println(e); c- l+ m2 |" ^* v* I
System.exit(1);9 |: J' u! c. `- m. D! o
}0 C/ w/ h; ]4 s1 M F& z
: b4 g$ k2 ?% S2 ]& V; _( S
/ e- l! T2 {% z# W9 S; N$ o* y- Q }/ G2 a$ |1 I( q1 p4 t' u
5 g* h' P2 _ ^; O
private void swarmSetp() {9 C( A3 a, f4 P; j
list.addLast(new Agent(Id));
4 k7 O' ]4 T( I: p: I/ t Id++;' _, V4 |! y8 o: n1 l' L+ J
}
3 v" M- |3 u& e( H$ @6 }
, s% Q; A) V2 w' Q9 a, U; J0 D% Y public Activity activateIn(Swarm context) {. u+ X( y4 d3 V0 G' s: T
super.activateIn(context);+ e. c6 f" c5 M! g# p1 Z/ `3 S( ~
schedule.activateIn(this);
# p1 G0 g( |' p w: @ return getActivity();
1 Q5 ]1 Y( {) k8 f \% A R }+ ^3 z @: M6 ^+ N
5 z0 V! ]6 q3 D5 x( b
public static void main(String[] args) {' C, L, C3 h9 X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" ]5 b# r7 A5 z _ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, L& N( r' r; `2 _6 U
swarms.buildObjects();' H7 u6 l" s+ q# B: Z! P! c
swarms.buildActions();$ L" w* z/ R' |' ~
swarms.activateIn(null).run();
, H/ L8 M/ U" W- m; v }2 r! Q! V, I7 _% Q; Z: V2 W5 ~
: s5 l! ~$ j3 v9 S} |
|