|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & j& S3 v. I0 N+ H
; C, T, w* `+ o7 `$ i# K- u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" d$ Z% f4 X* c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 {7 @" O. T0 m' y. N; N" ^swarm.SignatureNotFoundException
& g( H: }; g9 r' N at swarm.Selector.<init>(Selector.java:76)1 q, ]0 l. F/ o2 E: Q& u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 v' Y/ d( W/ d2 D% {" B* I1 i at ActionGroupDemo.main(ActionGroupDemo.java:67)! q) W6 l5 d/ h+ m0 @% D t/ U
T4 f. m, `1 G" N) T0 T) N9 t, n: Y+ i2 p) a; b
import swarm.objectbase.SwarmImpl;( ], C0 K- n/ m/ A
import swarm.objectbase.Swarm;* Z% V D6 O8 l' c' i4 `; m
import swarm.activity.ScheduleImpl;
( y7 f) ~4 S+ Y2 [6 @& kimport swarm.activity.Activity;9 Y0 A* ~0 I* Z4 U* S x$ O+ G
import swarm.activity.ActionGroupImpl;% U4 N/ x9 r5 e# m, u
import swarm.collections.ListImpl;; u& l) |) O/ Z y" P' d
import swarm.defobj.Zone; 7 ^ H G" n; X# D
import swarm.Globals;
5 @; _4 M/ K* G( y( i! n: |import swarm.Selector;
, H+ t& K% }3 Kimport swarm.activity.ActionGroup; 5 @% K2 K, A. S* L' ]4 _' ^
class Agent {
$ p" A8 ~$ h I" a n* ^; { char id;6 i! K. z- Z1 k: D; i# b
9 r! Q x* A1 H
Agent(char id) {
! y) W& s1 D* X( I4 g: d9 z, ?( e this.id = id;( K+ v6 M5 q; {+ \$ u6 p! N
}
& ?0 f2 j7 L, y4 g' G0 W* _4 ^$ R- V3 B/ b8 N6 k. ~$ q6 X2 `
public void agentStep() {: w/ q4 q- h4 y1 \+ _9 {
System.out.println(id + ":" + Globals.env.getCurrentTime());4 q) a1 _1 g! w; L- O
}
% [( i1 R! U/ f! \}
% c! e$ H+ Q% g( g' @: n d+ q# i% Y5 w- V0 X' m/ Q. x6 M
public class ActionGroupDemo extends SwarmImpl {
) s. t$ ~- @ s0 x/ p1 N p- _ ScheduleImpl schedule;1 @" l& S' A2 z: B$ m7 ^: T4 l% q7 j% U5 D
ActionGroupImpl actionGroup;
& }8 s8 c1 n Y; P0 q0 l- Q6 T ListImpl list;
7 X: A3 h) M9 ?. V/ ~0 r2 N6 j char Id = 'a';% v& i% X) P, W' P8 z. M
1 k) y% C% h+ L% E8 B a
ActionGroupDemo(Zone aZone) {7 o; v3 r3 M, x% Q" `5 p0 g7 C. w8 M
super(aZone);
/ c1 M; _; d: z& R# V) W1 S# u: _ list = new ListImpl(aZone);4 k# S4 m+ p0 |( X$ P- `; g' W
swarmSetp();% L1 P2 p4 ?' U" Z& u
actionGroup = new ActionGroupImpl(aZone);4 v S4 D2 E( ^! `
schedule = new ScheduleImpl(aZone);
: J' h2 ~9 i4 B try {
1 i4 G+ E2 E a3 i& ^2 e Selector agentSel = new Selector(Agent.class, "agentStep", false);0 h; [2 l0 B1 d+ l5 ~" X( e7 w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' |. M, q9 O7 @' X$ x 8 V3 i+ Z+ W: N) _& \
actionGroup.createActionForEach$message(list, agentSel);
3 B& \ P2 ]7 c! D6 P) t$ D6 j2 T actionGroup.createActionTo$message(this, swarmSel);) q- e; W$ w$ t2 m2 n+ K
schedule.at$createAction(0, actionGroup);- V% K) r; K; d$ y9 u v B9 D
schedule.at$createAction(1, actionGroup);" u) P3 H9 k3 ?9 j
schedule.at$createAction(2, actionGroup);
9 a+ ]; J0 L+ c `# P
" ~% ~- N- u2 R t. y% H } catch (Exception e) {' D' o6 A" f0 @' e4 _0 u3 x
e.printStackTrace(System.err);3 }! a1 ?$ Q2 A
//System.out.println(e);6 @* Q0 }/ x, i* f7 s; P
System.exit(1);
+ A: F# j; P! k' `4 V& z }
" K J3 [# z% D3 x0 Y& N) |3 K
3 t6 A6 u; D3 f3 S
! y; Q) ^' T$ G& J+ p }
1 L( s) `- O; d( l* q9 {1 f; c8 [, T& ^* ~" f/ M% o9 I
private void swarmSetp() {
) I9 y5 n) [! o# l& f& W+ n list.addLast(new Agent(Id));/ y9 ^2 ?8 I" S* H' c; u. D0 x/ X! x, {
Id++;
2 c! G) Z8 ]3 r5 w }3 n5 y. i* t$ S" k+ C9 P: a8 p
8 H; \/ ~# C6 v7 k3 l public Activity activateIn(Swarm context) {) I' N) z5 J! f$ s u3 \
super.activateIn(context);8 B# i. Q# N$ Y% d5 e; w
schedule.activateIn(this);
" h- n% e, G0 K: B( b; D return getActivity();/ T- _7 @ R& Y+ f! y9 P& ?
}' R% T5 T- m% w0 c$ t m6 q
8 f7 [7 P h+ Y2 s! [
public static void main(String[] args) {
' Q0 f! j5 ]+ |8 F- ~# f, n# ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 J% V7 h, _1 _3 K" [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) ~$ K8 a- p% q5 r6 o
swarms.buildObjects();
! U7 m" X& W7 a1 v( _ swarms.buildActions();
3 q! l6 u# ?. o3 ]/ c( l swarms.activateIn(null).run();
" M# f/ N" y9 K Q' ^1 M' `2 x( ^ }. D5 T& j& k' M4 Q. c0 `
. G- B5 O1 T+ w} |
|