|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 v4 S; {5 I8 X: m- h3 `
- e: Y6 C) E, F) [- A- H/ G) I) o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 I Z7 k, L- h" A. T. ^) U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' x" n t2 S& E6 ]3 X7 q
swarm.SignatureNotFoundException
- X* E/ E C# V& A: Z# d) D at swarm.Selector.<init>(Selector.java:76)" M! h M( J6 ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 i$ I+ x! D) o. b0 S
at ActionGroupDemo.main(ActionGroupDemo.java:67)
@/ ~ O$ ?% h" {1 t3 J
; j8 C4 S" r3 w' \% B% g5 G7 Z9 @! ?' i- c
import swarm.objectbase.SwarmImpl;
/ p6 v4 t% X* g8 d2 P) u. B% W Dimport swarm.objectbase.Swarm;% \$ w9 p7 Z8 U# D, _5 s
import swarm.activity.ScheduleImpl;4 `$ e. Y9 X! Y/ v4 j3 n$ w4 Y E5 R
import swarm.activity.Activity;; U4 K. S% v3 `, }
import swarm.activity.ActionGroupImpl;, T3 e9 s5 M* S a1 a& I
import swarm.collections.ListImpl;
$ S) L$ x4 P6 @, ~5 jimport swarm.defobj.Zone; - r* i: y1 J! P8 P: Q( M. W; J o
import swarm.Globals; u* R! N7 R. w$ z) }
import swarm.Selector;
4 T6 g8 ?# H# Y1 N @4 Bimport swarm.activity.ActionGroup;
2 I9 x1 ^# @1 f! m7 ]class Agent {+ Y4 U" S) B) g8 u. v
char id;8 U) S! z" E3 r( E8 O7 f8 W5 U
( r0 p; z! a) i Agent(char id) {7 I i. F$ a6 F: K% ?$ N; C
this.id = id;3 {5 K; U1 q5 h3 [7 L, A! J+ w
}; c# ^; l6 W6 z9 [, Q
! f% B/ |# C% U/ g public void agentStep() {
/ C( i, k; B' L$ Q/ B System.out.println(id + ":" + Globals.env.getCurrentTime());% g( s9 d6 W" ]1 F2 _
}) V# ~! {# e' E: G
}+ U( j" T3 @8 r' I
0 L9 @( x: w" G) w( e- X+ ^9 d. dpublic class ActionGroupDemo extends SwarmImpl {
+ B$ [- ?0 ?5 \- C2 E ScheduleImpl schedule;
3 i6 s$ O$ v M( `0 v ActionGroupImpl actionGroup;6 L$ `! M- D: n+ r
ListImpl list;, Z" e# z" ^5 N- K: O( x) L
char Id = 'a';
, L3 e/ w. k H( H+ a' r
, b# h1 w- d. z) u% C& Z ActionGroupDemo(Zone aZone) {
3 ~% y0 ~) F6 S0 f6 n# T P super(aZone);: k% x# m" x( i! f# a6 w8 l
list = new ListImpl(aZone);
) H/ y1 R. m) ]8 n, u/ Z swarmSetp();
5 k3 n/ n. T6 l) Q: H actionGroup = new ActionGroupImpl(aZone);
( T' @( o M' v! L schedule = new ScheduleImpl(aZone);
4 K; E. f8 Y& h$ v try {( F3 }- y' a: T5 c- V5 ?5 `
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 S- ^/ e" u/ S( K7 n# z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 {" h5 a2 ~' y; p
+ ~9 @( q. s8 k6 O actionGroup.createActionForEach$message(list, agentSel);
8 F! W$ i% u5 V6 c' ~* H actionGroup.createActionTo$message(this, swarmSel);
# ^, ]; m1 O- B2 z7 A4 n5 p4 L5 ] schedule.at$createAction(0, actionGroup);* b% }* Q) ?- ]
schedule.at$createAction(1, actionGroup);
' D1 C& i" K$ n2 R" { p- u. U schedule.at$createAction(2, actionGroup);9 F, B% M& x2 W. U
/ K( k% ?$ G0 b$ [# `8 c; S } catch (Exception e) {) T* A s2 [ d+ K) M
e.printStackTrace(System.err);; t* N2 G0 }6 P# m4 }! \: S
//System.out.println(e);( V5 ?. {. ^$ h+ l5 q$ G
System.exit(1);
6 d( I0 Y5 Q" a2 ` }
. t* P- q! O* M; O, l' R" ^0 }& |8 x. [6 ]# |, ~. ?, \
- j3 { `, w3 l
}: l$ x; Z0 E+ G, F* X
G2 q: i* j& \0 w% J' L1 i3 J
private void swarmSetp() {
& Q2 n: e( k! H% \5 l list.addLast(new Agent(Id));
2 m) P+ c" A! A* j- D+ Z2 U Id++;- e8 {$ t$ t! @5 {8 s& ]
}1 h* h; i, M+ X( E- e, v2 p
: q; k, R3 T1 V3 C6 s
public Activity activateIn(Swarm context) {0 c* b& ?! j, T6 r: s, [: F
super.activateIn(context);0 z, X8 r' W! \. w+ A
schedule.activateIn(this);3 c1 Y" |* U* x6 y0 l
return getActivity();, v `" j/ f2 |$ E
}
& A' I# Z9 O' W4 l- r2 t) P# M& z
public static void main(String[] args) {9 H2 y; y' q) P) {5 `- H; u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' F$ h5 q# H4 s- f& U/ E8 l/ u9 c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( M4 n' l5 O) D& Q9 m8 q2 S
swarms.buildObjects();' ]' \! k2 G9 e5 E+ Z6 I
swarms.buildActions();
! H/ \/ s: j% s2 w+ R: r swarms.activateIn(null).run();
- h' B$ c- d' Y& i7 j* C( Y }
! f1 Q+ V6 \5 Y: J l+ C) X7 Q2 T0 L, r, V
} |
|