|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 P0 Y) o5 }: j5 f* |0 r" D' M; F) ~, f9 m7 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: G/ p+ L1 f3 u5 g* z' g, H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# j5 `2 x+ @, H0 e9 `0 b* E: @swarm.SignatureNotFoundException0 V% f6 b6 d$ N+ R: u# ~
at swarm.Selector.<init>(Selector.java:76)0 _! ?" U* L' T" v, G& W% h* G+ U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ {5 v' X/ X/ g" i. H* F8 _* c
at ActionGroupDemo.main(ActionGroupDemo.java:67)! b" J" @$ U: M+ ?8 X
) n$ l) d; n- b
& q1 h& Y' c8 ~( a$ x3 p6 \+ Ximport swarm.objectbase.SwarmImpl;/ j- v9 p$ ~+ p/ S
import swarm.objectbase.Swarm;2 P7 S( l8 L- s/ G. N7 |' Y7 N
import swarm.activity.ScheduleImpl;
y' @ E0 l( P2 I. j) Mimport swarm.activity.Activity;
' ^: A+ |8 u. @import swarm.activity.ActionGroupImpl;
, \: m+ u4 O* A, Timport swarm.collections.ListImpl;( L7 Y( ~4 D! |, ]5 a. ]
import swarm.defobj.Zone;
4 ? ]6 `$ m9 Nimport swarm.Globals;
; O( x8 c; F' A$ ]import swarm.Selector;
3 B: ^, g! Z7 H, mimport swarm.activity.ActionGroup;
3 R4 ~! j# @. Z5 H+ Fclass Agent {( `* v- {- O F7 m( O
char id;# W0 z8 S2 c5 d* P# Z* k
4 Y1 `' l7 | `" D: D6 B& R$ s5 W
Agent(char id) {3 ?* i# c% d: W
this.id = id;: D7 C) Y+ W- L8 `
}1 t9 V5 t- H* R$ j0 B
% C& S! w( H& ?1 i, X4 \
public void agentStep() {
4 F3 I1 A8 Z: r5 L, ~ System.out.println(id + ":" + Globals.env.getCurrentTime());8 s: r+ z `8 g. I( F n9 f, W
}
9 l: F0 C! S& o$ g/ g& r K}
, g+ [0 m _$ I) T" G9 |$ W4 y% J( Z. Y7 m5 w) R1 p% O) v& p
public class ActionGroupDemo extends SwarmImpl {% A7 T7 g; q/ `. ?
ScheduleImpl schedule;+ u! ^. o# d4 h9 \* o* e% ^( t
ActionGroupImpl actionGroup;
6 b/ ~ S+ q. K$ P0 Q0 g4 W, d1 ` ListImpl list;& O+ H) r3 I+ H1 x. C; V
char Id = 'a';
3 v9 Q% H% q, c* {! O5 N$ c2 A+ \* _
ActionGroupDemo(Zone aZone) {
/ y% r1 m$ S& F" J" ]: { super(aZone);8 W! I; Y- c6 _
list = new ListImpl(aZone);0 k- m6 K/ O9 [; r
swarmSetp();
& h; E, r- N+ P& A$ K2 o actionGroup = new ActionGroupImpl(aZone);; y1 H+ j! I1 [3 u
schedule = new ScheduleImpl(aZone);# `$ H7 |1 K4 R9 w/ E
try {) `% Z, R; o6 L5 X: U
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 W1 F/ R: K% }' c% @6 x Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' u4 @( d! i7 b$ R! m) n0 @" l1 ?
0 u( o; H p( F% q7 R
actionGroup.createActionForEach$message(list, agentSel);( ~ f% _1 I- R+ R' y5 J
actionGroup.createActionTo$message(this, swarmSel);
9 f: J% t# a7 @& H schedule.at$createAction(0, actionGroup);0 ?0 E, X2 z5 G
schedule.at$createAction(1, actionGroup);
! n% r% n% D9 b: O" r- E( a9 q schedule.at$createAction(2, actionGroup);% s5 v8 p; E* ?: c( G+ ~2 K# t
) {' j$ {4 d+ n% L3 | } catch (Exception e) {
. m, w3 S: A" ? r$ C2 H" s9 l9 w e.printStackTrace(System.err);
3 {" E. t) O' Y" N5 [2 O. A //System.out.println(e);% |* N2 h% V& J
System.exit(1);) M. ~$ G0 E" `6 U, [. F/ |- a5 n
}
+ Z2 m7 e8 e, f! {2 G0 ?( z
8 t% J$ l4 L6 n: b4 q
7 ^" M% |7 u) d) X* t! @) O } ~, r( \1 s7 L! }
+ J7 A4 A, O$ o. U4 z" x
private void swarmSetp() {# t+ B, Y5 u. K e% d
list.addLast(new Agent(Id));
" V3 B& T7 _. H3 b" J Id++;) O% c6 X {& n
}
2 G% c% z1 E. D: O& W7 s5 ]! H2 z( A( r/ b9 K" X0 f
public Activity activateIn(Swarm context) {* Q7 F z8 h; x4 r4 ~
super.activateIn(context);9 g9 W3 ]- D2 K* X$ E( F
schedule.activateIn(this);1 t9 ~* Q( y7 J; ]* G9 M. g
return getActivity();! P: Z; r$ z5 V1 ? K: F7 A
}: D) | X$ D* t! g( P3 S! E
$ [# k* h; w5 h$ c5 z2 p) I# @1 s F
public static void main(String[] args) {( `3 ?. v; w1 q; s* T( [) ?4 x. Z6 K8 U
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) G# j: k$ u% Z9 s; {& q2 k
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 U. ?+ s0 t- O6 y7 k, `1 C9 B swarms.buildObjects();
/ L' L5 W$ l4 u& t1 `6 L2 d% N0 D swarms.buildActions();6 k- f, |! j* O4 E
swarms.activateIn(null).run();2 K/ G, M2 j) [! M- s8 U- T: X- J3 O
}7 i1 R- y& }) o/ I
- c9 y# q# c. k- k} |
|