|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 w+ t3 w5 v/ r6 X* m
0 `- h/ D t" d- }6 e9 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 G* Y; C; I- I- I% b5 \7 Q6 p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: g1 Z6 v. W& x- I( dswarm.SignatureNotFoundException
0 P1 h# k. M. `9 _$ X Q9 j at swarm.Selector.<init>(Selector.java:76)& J6 P. F$ X, \6 q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 W6 M1 w% h7 V; @" d( p at ActionGroupDemo.main(ActionGroupDemo.java:67); v1 T: S; u1 p( {" g8 m: d. p* u8 Z
) F6 S/ K) e; ^- O- a& V0 w
7 y5 g/ a* c3 r( d- ~& M6 V9 Oimport swarm.objectbase.SwarmImpl;
. j# N9 | b! e2 c7 p! ]' F% Rimport swarm.objectbase.Swarm;6 N+ `# e, H( q. O% R6 A$ H$ ~% C$ {
import swarm.activity.ScheduleImpl;9 P5 V" D9 A" S7 o* M, g6 P3 w
import swarm.activity.Activity;0 V1 |8 z7 v9 Q# p3 n: s% ?) W
import swarm.activity.ActionGroupImpl;
' C& i1 e+ O5 G* M2 Z: Yimport swarm.collections.ListImpl;" C9 s2 R& Z( ?% V$ J
import swarm.defobj.Zone; 5 q4 e: P; B ]; _6 ~$ ^0 _+ ~5 Q
import swarm.Globals;6 e8 t; N. u/ D+ V- Y1 l3 x
import swarm.Selector;
* `5 b: n* D: ?1 S* _1 z. g. r+ u% }1 `import swarm.activity.ActionGroup; * ?) O- S) f0 v& t9 h7 Y5 j
class Agent {8 K9 A3 u$ @- ^& L+ T( a
char id;
* S* r+ [' M( P0 Y/ _% j3 p3 h- B3 S2 \! `) h! P
Agent(char id) {7 t$ }! m: G" Q2 h5 r
this.id = id;8 H1 \' L9 U- a
}
. x2 y) T d2 w( m' L# t* R+ v9 h! D Z o0 _2 V ?1 R# R
public void agentStep() {( k; _9 X* g; T4 j$ V4 p
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 R' W1 }5 f$ x' G5 U }/ {2 K' ]3 R1 N) p
}
) s2 w }) g4 }8 ~ s
y4 x5 a# ^8 I: l7 q. mpublic class ActionGroupDemo extends SwarmImpl {
# l S {' ?' L- M ScheduleImpl schedule;
' o7 i/ i4 P$ W; u ActionGroupImpl actionGroup;) Z. k2 T; F% B) k7 M h! A
ListImpl list;
C3 p% ~: J$ S/ a! Q I7 V2 a char Id = 'a';1 Z6 ^" m {5 E3 b8 b2 D3 Q0 c
$ l/ p$ n5 _% B/ w ActionGroupDemo(Zone aZone) {
1 p1 L/ S1 j; q7 z5 \ super(aZone);) W, f" T$ o' t4 f- O
list = new ListImpl(aZone);
9 Y$ X3 l) C4 W' ] swarmSetp();; G9 x( e9 l' T8 C
actionGroup = new ActionGroupImpl(aZone);
l3 L' T1 S/ [1 | schedule = new ScheduleImpl(aZone);& W4 w" ~" a" X1 q+ b6 d& s" l! a
try {: T! t# I+ z* S! r, K
Selector agentSel = new Selector(Agent.class, "agentStep", false);% ?3 v8 | F8 q& H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 v. e2 i' Y5 x5 X' ]5 h: I
9 o* a; g6 O! S( ^: t: h
actionGroup.createActionForEach$message(list, agentSel);
* q: r c w: F d% f actionGroup.createActionTo$message(this, swarmSel);5 d. N0 r V; d" y. L# x! E
schedule.at$createAction(0, actionGroup);
% }0 u; Y; f l schedule.at$createAction(1, actionGroup);
* K, ^1 O0 H) m7 H- |% p) W schedule.at$createAction(2, actionGroup);
, J; C9 X: F+ Q* p4 L% A* z+ j2 U$ C" V6 c/ @3 [
} catch (Exception e) {
5 L. |& Q7 r' x. S/ @0 s& b" X9 W6 A" o e.printStackTrace(System.err);
5 G) z8 @2 O) H# ~( H8 J6 l //System.out.println(e);6 U3 D3 `1 `/ z8 n* _1 ]+ x7 x
System.exit(1);
. U" r, q7 ?( L3 G( J }9 J; b A Y+ S+ ~. t, L
1 j7 q0 C) l7 y* w" u) `" [
6 z s4 E4 h2 u3 a+ ^4 x/ L* T8 T }
: c$ \5 o2 \- h0 ?- [8 y$ g
. c) A- p; B8 }% B private void swarmSetp() {
5 z @* @7 O( g( U: S9 ~ list.addLast(new Agent(Id));; D3 Q: c# J& H% f- I2 N
Id++;
) h+ c# `6 ]4 w! E7 c. g }3 m% m1 t( ?3 e, K( T( h5 X: Z
* z& | m& o0 o' g7 _( t1 n" e4 a public Activity activateIn(Swarm context) {
* \2 ]4 V( S, C: S* ] super.activateIn(context);
# o& v5 Q& m! c! U: N4 W3 i0 K schedule.activateIn(this); ^9 Q$ j; V5 L# Q2 B
return getActivity();
, x# x$ \# z1 S k$ x2 w. @$ ] }
" q* m. q% B! i; l, B/ m- u
- r- z) ?' T- F5 J public static void main(String[] args) {, K# w7 x8 {3 C% m" g& O3 E
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. z' z% d# g" W4 i5 Y: Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' z& S. Q, @! B' V2 U; |9 l, g' C swarms.buildObjects();& u0 X4 p$ `6 C. k# `7 a/ c, v
swarms.buildActions();/ K8 v% S# t7 h7 `4 f5 n
swarms.activateIn(null).run();( u9 F: F& g; a/ h* o
}
0 @0 z; L( y/ U" Y+ Z
8 V; z( i8 c" D} |
|