|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 Y8 M. h5 E! Y- ?: U
9 f0 ]4 p8 Q7 f: q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 F; L; W) E5 N* D) w8 c/ W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 X% m# w: X. z, t# w. w
swarm.SignatureNotFoundException3 n3 I$ T. k4 y
at swarm.Selector.<init>(Selector.java:76)
/ {6 Y( j% h; N" P# ?+ o at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 R+ w) Z; k+ I% o% @/ D' E# g2 D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 C% m+ o7 I7 U5 ^3 ~9 H$ }
, V4 y: k' i% G4 e
9 h6 s# K9 @9 Y |% Y8 {+ timport swarm.objectbase.SwarmImpl;) n% g& J0 x& a
import swarm.objectbase.Swarm;
. q4 O0 q7 r8 S* g% {' \* Qimport swarm.activity.ScheduleImpl;
4 A4 j8 z* `9 _; T& {1 J) Jimport swarm.activity.Activity;
* l: W4 I" T) v5 M8 J( yimport swarm.activity.ActionGroupImpl;4 e7 e# r: e& }% G# j
import swarm.collections.ListImpl;
+ I! M: e* a$ ?2 @: @import swarm.defobj.Zone;
4 J3 D; q7 Q* n7 v9 iimport swarm.Globals;
0 c6 I+ z, M! K+ c7 H0 @+ timport swarm.Selector;
N d0 h2 b' W, Aimport swarm.activity.ActionGroup;
3 {$ m# ?2 t1 p# C! \class Agent { i1 C; u6 h8 U5 e( Z
char id;
+ K X J! Y g6 m l
3 y) b# E% e* B* {" L0 M5 Q( h | Agent(char id) {( f! h- F% |6 c# y
this.id = id;
* i6 z0 N6 M! Y/ G7 [! z }
1 T+ }5 C s- h& Y( F
& R4 _3 e O) @) t: x! |5 [ public void agentStep() { i6 K6 g# |. n$ ~& E" J1 ~
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 [: M/ P+ `' u/ C" O }! s2 M9 G+ |6 O
}& X$ I& c7 j. T) E: V5 K' \- o
! A: K9 l8 |3 H# Q7 R
public class ActionGroupDemo extends SwarmImpl {
7 A* B% |$ _" M% z0 P( `, p ScheduleImpl schedule;
0 e$ F+ t3 b$ ]% ` @ ActionGroupImpl actionGroup;3 K a5 B' c; `
ListImpl list;1 Q$ ^- R, Q8 D8 e" `% ?0 J
char Id = 'a';
' E0 k' ?/ \# |9 V
$ r/ H: h" r" o! V. k! \% i ActionGroupDemo(Zone aZone) {
% @! W* K: E. d# e4 E" P+ B super(aZone);3 f- M6 _5 l: L0 R" A; p
list = new ListImpl(aZone);
- u4 k. o; R) e. E; v8 |/ }" t( f3 Q swarmSetp();) ?3 A# n$ C$ B2 d" z( C6 {! R% U/ u
actionGroup = new ActionGroupImpl(aZone);
( v9 @2 b9 o1 a% ]" | schedule = new ScheduleImpl(aZone);, ^; B/ H1 l, F$ m, ?5 u+ Y. H: Z
try {, Q0 t( `' p) X
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 Y8 H* K; ~ S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% C9 z2 |( G+ ~. l# r5 x) W- `/ l# ?
; ]: j0 X+ n& F7 ^% L: N$ b& K& s actionGroup.createActionForEach$message(list, agentSel);
$ y* z% G" g3 {' I6 v actionGroup.createActionTo$message(this, swarmSel);
6 H3 j* a& p/ [# A4 P, \4 U8 l( _ schedule.at$createAction(0, actionGroup);
+ I1 d# _% a g1 t- J% l schedule.at$createAction(1, actionGroup);! y3 { i9 J: }# {$ S
schedule.at$createAction(2, actionGroup);' R+ Q8 t i) u, L
9 c2 o8 e# k$ e5 a1 U+ y6 _ } catch (Exception e) {
0 L, p6 L P3 ^& @9 ?$ D7 U e.printStackTrace(System.err);
; r( y1 |6 ?. I( T3 p //System.out.println(e);
k( Q* B6 C7 W2 F7 c! M System.exit(1);
4 w2 M: J. m) g8 g Y }
- V) X0 b, Y+ z6 V5 A4 g8 B, H. ~5 z
q$ O9 ?+ g2 b+ R% ^# N
}. p2 K) t* q7 d! A' K. g( X
& L, V3 W7 ?3 n9 X7 J* n3 O; M
private void swarmSetp() {
* {* U0 O p4 V: u/ Z" h list.addLast(new Agent(Id));" y& z# N: M0 Y' N$ M9 m9 Y: Z+ M7 N
Id++;
/ X$ z [, O$ Y6 g7 H0 n$ f/ R- M2 h }4 W. `# p7 M( z0 E
7 Z$ w+ d5 x& [ public Activity activateIn(Swarm context) {) Q8 _' z7 S& W/ G* l; V% c! Y6 z
super.activateIn(context);
4 B. A- r; X6 ^ schedule.activateIn(this);
# h: ]/ ?7 e9 d8 H8 N8 i A6 ^, Y return getActivity();- \" C$ [$ d6 J9 J; r1 l3 w, A
}$ ~3 j1 w L2 Z8 `' r( I- _
# v( i4 g* N! n2 R2 d
public static void main(String[] args) {
2 Q# [; h' @& c0 B$ K) H; s2 K. e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) m* X9 U! {% z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ t, E% u) u- A; L
swarms.buildObjects();
6 a' H3 }; ]6 F/ S swarms.buildActions();6 x5 Y; n6 Z4 S& i5 q; |9 C
swarms.activateIn(null).run();" @8 x8 x6 x! @, A% D0 K
}
) t9 |6 c9 V% t2 q f% E# C' d" N' o- b
I' \1 |( |! H0 Q4 G' D; f( k} |
|