|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# t! i* F& l, n" X) F: c: P) ~$ y0 g; h' w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, R. \0 l, F' e! M+ J) N5 j" Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: y& @% x9 t8 F9 n1 a
swarm.SignatureNotFoundException' ~4 X. d* |/ [) w2 r
at swarm.Selector.<init>(Selector.java:76)
* }+ `) k' V( R! [* b g at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 _4 b6 {6 u' Q, {: n3 [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ ?6 A0 f E9 X5 ?3 m' @
; M ]% \: A0 j" C2 W% P+ u4 y; {; ~# k3 [
import swarm.objectbase.SwarmImpl;) U( t# k; \# w$ F. a! M; [3 ?
import swarm.objectbase.Swarm;
3 w {( c( b3 H6 x( Aimport swarm.activity.ScheduleImpl;
8 o: h1 x+ N9 W- v9 ]8 yimport swarm.activity.Activity;
5 u( c; G# l+ h9 k7 g3 |0 z, d$ `import swarm.activity.ActionGroupImpl;
. D) j" E' `5 zimport swarm.collections.ListImpl;
. y. j1 Q( l6 k( [3 S( @9 p( T* R8 ?: yimport swarm.defobj.Zone;
9 q& }) y7 {7 B0 i/ limport swarm.Globals;
* P6 o0 ~/ v/ B3 f# Gimport swarm.Selector;$ {- h' {) ^6 A1 P0 o
import swarm.activity.ActionGroup;
: ?9 H4 N3 y% j& s @2 D. xclass Agent {
, O' P7 ]9 |( o4 E, M- J char id;3 G5 w" q' B+ Y4 B
# t$ e- I$ i! v | Agent(char id) {
* f" o; I; R2 Y. W( w0 E& E2 ~ this.id = id;' V v( r) I4 @: k3 _3 Y
}
( Z; X. |/ z. J) j$ a0 q0 ?4 {' \! }
" ], [/ d1 `, H" Z6 y3 [+ r public void agentStep() {
4 P$ x/ L/ r B/ C" b( i, X+ t System.out.println(id + ":" + Globals.env.getCurrentTime());: ` J! A& M% S P4 B! \" R& k% t; |, i
}
- V, R9 |7 a8 t1 f$ b}' p* T# W0 l% T- N
" }6 B {- e. s3 l
public class ActionGroupDemo extends SwarmImpl {( e" a- h W) ^/ e( d. z, j4 E
ScheduleImpl schedule;" M" m+ v! ` S( f8 M5 _7 P0 x
ActionGroupImpl actionGroup;
( w% R& m. x9 f ListImpl list;
% ~$ S2 E3 i- u: P7 X/ H char Id = 'a';
8 r' v' V$ |) y/ \ l
2 t( }; Y; o9 l7 ^ O ActionGroupDemo(Zone aZone) {
6 k0 x4 b% Y# x6 S& z, W super(aZone);) `6 S) d9 L- d) ?/ [* I
list = new ListImpl(aZone);( U+ v( s! Z4 C* l# x" K# `
swarmSetp();7 f& V9 q& {: Q6 E* Z# F6 P
actionGroup = new ActionGroupImpl(aZone);) A4 X% D6 _- q' e$ C* x/ d
schedule = new ScheduleImpl(aZone);+ u \( g9 l( t, F
try {
% z, O3 {* m2 M3 z6 h' ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 V }/ m) t1 h1 w9 B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 `2 @* w# g, p/ H 9 k. c- j/ r# i
actionGroup.createActionForEach$message(list, agentSel);
& F9 t/ D3 }/ k7 E4 P* U/ w actionGroup.createActionTo$message(this, swarmSel);' x/ v1 e) Y6 J3 ]$ e% T
schedule.at$createAction(0, actionGroup);
7 X, e7 G2 l" I7 I9 w( i schedule.at$createAction(1, actionGroup);
4 X7 @. X% c- G, N% m. ^ schedule.at$createAction(2, actionGroup);
# j, m1 K, m2 m( B" L) q) l! c% q1 Z5 ~" B& I' X) o$ _6 A r/ [
} catch (Exception e) {
7 W. V4 M% I# V2 G e.printStackTrace(System.err);
% w, J2 V$ F/ O- m* Z( Q/ c. ^ //System.out.println(e);
( {4 ]$ ~4 f& ]% F, D) G" P0 w5 d System.exit(1);' I9 s4 Q: b, E4 F
} M3 Y2 |" f5 K. [1 F6 W1 L* w3 u
2 d/ L9 \3 Y1 K) ]& P. }. B9 V( n; c( S
$ }# [3 }9 ^% R0 r' { }( k8 r3 N* ^4 T) I9 B
! ]4 W. u D, v7 u6 a: Q. }2 F
private void swarmSetp() {+ x b7 c1 [3 I2 r& B8 L
list.addLast(new Agent(Id));2 D5 X+ A# k- z# K+ ]" L
Id++;: B1 ?$ G" T/ r% _$ z$ ~
}
6 D# ]2 [8 m7 A' W5 z: G. e+ H- \
" [) G$ p& [$ D public Activity activateIn(Swarm context) {
W) C3 V( a5 P7 U% M3 Y* s/ A! Y+ u super.activateIn(context);1 N$ h; Y2 u; r4 |* o3 B* F
schedule.activateIn(this);2 P% j5 h8 D; G2 v; [* `
return getActivity();
" y3 z+ J5 O* I1 ]5 f, b; A$ ^ }/ P) e# c3 k; E: x( Y6 L
" w: \' h3 m! b3 f2 \
public static void main(String[] args) {% n! T+ D% O5 T" h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ `. h0 q% C! G ?( o8 J! t* _ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' v$ H3 O( X9 G7 M) Z1 p' t/ ]
swarms.buildObjects();% Z1 K) T# T& b# ~' @' x0 S
swarms.buildActions();3 H0 Q4 W+ N, H* s. F/ ` V
swarms.activateIn(null).run();0 i- U, {+ ~9 n% ]$ F3 f+ L5 r
}
# P% ^+ O2 H6 q; ]' m8 J
D6 j J( X5 l0 v1 r* E. ]/ u} |
|