|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 ]; l! L/ d: o
9 n) ? V3 T% }( a- T! o' d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. _; Y: s. E/ \/ |5 o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 i* u" [2 x6 H0 F
swarm.SignatureNotFoundException4 k' N2 {7 [% j; } t+ q6 ^
at swarm.Selector.<init>(Selector.java:76): U( a: K) T5 ~5 \ C- B/ B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- N( e% f y' }
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% e9 a; |5 M) J! o* U( q# @4 x' i: ]
" J) t# }" B4 L% J3 p9 u/ k3 D
2 J% a5 m% _) ?; _import swarm.objectbase.SwarmImpl;' S0 H" ~; f2 d7 m e/ T
import swarm.objectbase.Swarm;
& J# u0 G( P3 h5 N5 W4 Uimport swarm.activity.ScheduleImpl;1 i& `) j( m9 o) U
import swarm.activity.Activity;
) V4 O O9 Y4 |! a6 R" a. G. F2 {import swarm.activity.ActionGroupImpl;
8 I. c: d' c2 f2 U1 q7 cimport swarm.collections.ListImpl;
; j( u7 {' G% p2 gimport swarm.defobj.Zone; - n" F8 ~ s! Q# Q6 s/ v8 ^
import swarm.Globals;; x% x+ Y$ x) f
import swarm.Selector;( U+ k% v. o7 s+ [; C, X4 u
import swarm.activity.ActionGroup;
- e* T5 I$ m* d' X# {2 a6 G) Eclass Agent {
( {8 g0 U* Y! @4 n& @! x I s char id;
( e6 ]; h6 O7 V1 k2 t7 K% U* t+ F8 `) P; a/ j1 C
Agent(char id) {
$ x7 u8 x" b; F# E W# W3 o this.id = id;$ P2 N, m- n1 R y C3 Z/ D! e
}
" h& ?) g D& F
/ H6 P8 D* `; R7 p6 m public void agentStep() {
9 U* s) n! n% P. ]" z System.out.println(id + ":" + Globals.env.getCurrentTime());9 C; w. q$ o: W3 d+ ` l
}
* d8 B3 X" F6 F5 \( q}
$ `- A5 `" W0 n( ]" a! L; \# B. R# a( R8 L7 l; y- w$ `$ S' b/ Y) I( R
public class ActionGroupDemo extends SwarmImpl {/ U+ {0 ^/ Y A1 J+ P/ X( v
ScheduleImpl schedule;
7 R0 ?! L- ?+ J6 v; u( E! w ActionGroupImpl actionGroup;# b! Y1 q2 V3 m! x+ O. O0 P
ListImpl list;
( W% _- }) a) G2 K char Id = 'a';' X3 J9 O2 |9 H$ A9 e& F
0 z* i+ z s' Q9 B$ ]5 S ActionGroupDemo(Zone aZone) {6 u/ s8 t' o* N4 C5 s6 B
super(aZone);: U* a, Z; P. @+ P4 O
list = new ListImpl(aZone);
0 t* c. l: E/ `, N swarmSetp();
2 e7 T% Z D4 e; t) z4 E7 m) q. C# I4 b actionGroup = new ActionGroupImpl(aZone);. r2 \: |; i4 P' @. Q& S" G
schedule = new ScheduleImpl(aZone);
# |: Q9 P: @8 o b8 q+ r5 j; L try {
- ?5 P E2 j( o4 W Selector agentSel = new Selector(Agent.class, "agentStep", false);6 `$ Q. g1 y% v @# j2 ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' M* B4 G7 V( x
5 L, i0 m, i6 E' {0 }3 i- G actionGroup.createActionForEach$message(list, agentSel);) j( l: [0 d! q5 Q5 k4 G, H7 R9 Y
actionGroup.createActionTo$message(this, swarmSel);
% h" j3 H' ]/ w4 ^ schedule.at$createAction(0, actionGroup);
# Z' e6 ]3 ^& L" `* @& [* u1 @ schedule.at$createAction(1, actionGroup);: l% r/ y9 X% x
schedule.at$createAction(2, actionGroup);! n# F3 e+ ~6 e+ K. ^, c1 W8 s+ _
- D2 A! X2 W2 Y) N- P } catch (Exception e) {; M' r* g$ f6 S+ q8 w
e.printStackTrace(System.err);3 I' V0 y# r' _/ j
//System.out.println(e);6 `+ Z4 N8 N% T8 V, I/ J
System.exit(1);
2 D% D# a. G& q8 F }
' Y4 D% b& q Y" W3 [3 Z" b4 G
7 J7 V/ ^% H! f# h* d% [; E' l' F, u+ s: S& ]# w+ N4 h
}
& G, h1 G' S# Y/ H$ g* v; F% l; @
. ~2 a, U7 u4 C& N2 G9 y private void swarmSetp() {' F2 U' `# |6 T x0 |
list.addLast(new Agent(Id));3 ^9 H% {2 m' X. H0 r: p
Id++;
$ K; ]5 x+ ~ o }
- o* u2 `/ w7 s2 l; W
& d$ ^# o' {8 j$ P4 w) `/ l public Activity activateIn(Swarm context) {# f; n& F7 R" [+ ~! m# m% @
super.activateIn(context);
3 M5 R7 a+ C( a( }: {+ s schedule.activateIn(this);2 V4 H; @# Z3 ^% D, q
return getActivity();
' ^2 P1 o# _5 m: }3 k5 b0 Q }8 F" s5 f* m Z2 S' y
9 ^7 T/ H6 g' I, h% q public static void main(String[] args) {
( F( Q. O& ]3 u$ }: X4 H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; C. _+ a1 x/ R: b- g% a, W, F2 J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ X" X: R y; L; K$ Z/ x
swarms.buildObjects();
( T8 l9 _" Q8 ?) b7 a5 H0 Z/ W swarms.buildActions();
s/ P& U2 A# t; i- i7 k7 ?0 c swarms.activateIn(null).run();( t8 [2 [+ p m7 m* e7 ?! q
}. ?9 c" M) q( |0 {1 E& a# i8 |
( b$ Y& v9 S' P. _, K0 y' o} |
|