|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% C8 w3 N5 H3 }6 { a% b! F% {% e/ r& O/ [0 {+ D4 B$ c F5 w/ C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 D# M$ ]( J, x5 o% @5 x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* O& y( }2 s) p. M, X
swarm.SignatureNotFoundException
4 y* N, E* v8 \$ S& t+ E at swarm.Selector.<init>(Selector.java:76)) N, D& x2 C+ W" Y+ j4 y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ M7 {2 O! i8 d" ?) y at ActionGroupDemo.main(ActionGroupDemo.java:67)
' ^ _3 Z0 x# }% R6 H
& q) ~* j; p8 c' K8 q/ E
0 W; o% W( `3 c/ t5 a' k1 x- u! A$ Rimport swarm.objectbase.SwarmImpl;
' I4 ]) M1 P8 S# U- bimport swarm.objectbase.Swarm;; z) u- ~1 v+ [, h) K( E
import swarm.activity.ScheduleImpl;
$ R5 L( x% E" b' t! }+ ~+ I4 I3 qimport swarm.activity.Activity;
; Z7 y3 [' S6 k5 _7 Limport swarm.activity.ActionGroupImpl;
2 |# ]& Y2 i' Q6 wimport swarm.collections.ListImpl;& l9 c0 H! m/ ?
import swarm.defobj.Zone;
, V( G1 _) ^: Pimport swarm.Globals;4 ^9 h8 f5 d& y4 j7 \- M
import swarm.Selector;
& n- @5 X9 c6 D! m7 u4 \( ?import swarm.activity.ActionGroup; ; f `% M4 V2 ]; r2 [: N( l
class Agent {, c# I" j" ~* G3 s+ _: b* o
char id;
; U% g% H& O' @& M9 F9 T; m7 Z. S, O7 v; O% ], v
Agent(char id) {
4 M, u% E- o$ h$ l1 L this.id = id;
9 d: n, F3 @! ~. ] }
& K: g, O. U+ r3 G, y0 @/ t+ B
; Q5 j4 W1 f# ? public void agentStep() {" _1 W/ ^9 j6 E4 M( F
System.out.println(id + ":" + Globals.env.getCurrentTime());, v3 }. G! Y: _6 q& N
}
2 _) w) `( Y" Q- h; B! \% N: D: { H4 j}
: } c1 z( s% O9 @+ T5 S1 @$ R1 g4 J5 {6 i" V; J' Z: b
public class ActionGroupDemo extends SwarmImpl {
: [( d# p& p5 } U" D9 M ScheduleImpl schedule;$ X* Z# `0 n1 q; ^" p
ActionGroupImpl actionGroup;4 m6 w! K$ l% R4 O Q, ?
ListImpl list;$ [% K& }0 [! W% e( A
char Id = 'a';& L" c8 `2 x/ B
) ^6 a4 D9 E; W8 f8 J ActionGroupDemo(Zone aZone) {# l0 b X/ _. }8 Q7 U- s0 ^
super(aZone);
- L+ x( C6 ]* N: o; Y- ` list = new ListImpl(aZone);
6 {" S4 b' i% R+ Q swarmSetp();6 _5 W: g' D6 p/ s
actionGroup = new ActionGroupImpl(aZone);
$ K) S6 t, C [4 G$ c schedule = new ScheduleImpl(aZone);" [, r' k$ b) p* @
try {) o0 v6 e+ B4 Y! Y# a
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 K/ H; f, F8 m, V- ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ E5 f8 X) K: \* u' J
0 X) U a- z) t" F6 n# H3 `% u actionGroup.createActionForEach$message(list, agentSel); S/ l: Q" f) h! S5 H" B
actionGroup.createActionTo$message(this, swarmSel);
9 x4 E3 l, I3 k' l% s schedule.at$createAction(0, actionGroup);% F# v; M, z6 o/ H( N
schedule.at$createAction(1, actionGroup);
. P5 S, U9 M9 |% ? C8 I5 E: m; W schedule.at$createAction(2, actionGroup);
3 X- ^- z- C9 c- p; T6 P% o/ ^$ C1 j
+ i1 G+ U q* |, T9 K# C$ e } catch (Exception e) {
" j8 P z$ |1 d2 J2 U, E e.printStackTrace(System.err);
: O% ?( K# Y- C$ ~ //System.out.println(e);
7 t2 j1 n3 W% N9 l9 K; |4 v System.exit(1);0 B, Z7 w w" G* K5 u9 V/ g
}
0 D* S4 o7 T5 A7 L/ r T
% R6 E3 @1 N" O8 M3 @0 P
6 }5 o& h& @8 u+ {) S+ f4 M6 w }
U) W* W2 h' N5 }4 ^: l, Q1 F$ U. F' ?2 k" P
private void swarmSetp() {
4 K- Z$ R$ k" z list.addLast(new Agent(Id));& j8 X; l' q! r( ]4 t# P
Id++;7 {7 @& y2 G( t7 t* }! y- ?
}
3 l, Z+ R7 d( S$ ~3 d% v
! h. m4 A6 D3 t" n, l$ O: G public Activity activateIn(Swarm context) {* d. t" e3 L! F& s5 r
super.activateIn(context);
' y7 f1 m* C& |1 \! E- @ schedule.activateIn(this);" z5 p' x4 I6 I( \
return getActivity();
/ H2 @$ H6 e' w! I }! j4 M1 d1 a, k5 l& k# W
5 S, ^& k' S! a6 ^5 P# p2 Z public static void main(String[] args) {6 J4 _& Y0 i$ B7 X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 D' H+ s/ G( T/ P3 Q; C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. t! F$ q# s+ `4 O% j8 A/ T3 m1 H
swarms.buildObjects();
+ ^/ Y3 f6 A3 @ swarms.buildActions();$ w+ D/ D/ w, a- P. _8 f
swarms.activateIn(null).run();: W& @' d9 s+ m) x& W4 p
}
9 W& _0 W# V1 T8 I7 o: e
$ |+ N7 ~5 p% G) u1 S* R, E+ N/ O1 _} |
|