|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' q3 W6 J( V* L
7 F& x: _8 b I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 ~! h1 n' ^& ?- C2 {; O& |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 L% M4 P' h' {6 g% B" a. g5 `swarm.SignatureNotFoundException/ q; C1 c5 B) v: m
at swarm.Selector.<init>(Selector.java:76)
: Y" D* W" p3 {. A8 B1 V, f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: a, p7 d, Q' J b J( U8 B' U at ActionGroupDemo.main(ActionGroupDemo.java:67)0 U6 c* v7 Z8 c" W) ?
- L3 L l2 {0 m" ?3 B/ w
) C( R t7 x! ~) F7 G
import swarm.objectbase.SwarmImpl;* Y$ H0 x+ [, X; c4 u# e- l
import swarm.objectbase.Swarm;! d7 [. p. M6 D
import swarm.activity.ScheduleImpl;0 p H1 G/ P C) V4 p X. M+ {2 r4 H
import swarm.activity.Activity;
$ Y' E, ?! w) y% _) zimport swarm.activity.ActionGroupImpl;
8 T. n7 o6 s+ q( G/ U$ ~import swarm.collections.ListImpl;! _- s; K. o% u9 ~
import swarm.defobj.Zone;
" T& ]( }. g; b; H' u+ W6 Nimport swarm.Globals;
! A, A5 F7 u8 a. Eimport swarm.Selector;
* l! r) A& V9 h) W8 L$ _0 t+ ?import swarm.activity.ActionGroup;
9 o, T3 x6 u2 T5 I) U1 S5 Wclass Agent {4 j) ~- l4 z$ r; i+ }& ?4 d2 s
char id;
! N1 k" `2 O4 N& L% l. W0 W2 m
, X2 \- Q$ Q0 ` Agent(char id) {! L: M0 g9 t: P' d
this.id = id;
# ^6 q5 b6 t$ Q8 S2 m% G9 J. d2 K }; n6 N% e$ t* I- k1 f
6 ?9 Y; E ^9 a$ l public void agentStep() {4 j( u# ^" |8 m0 Z4 m! e: K
System.out.println(id + ":" + Globals.env.getCurrentTime());
, l, ` a. B+ p5 v }7 W/ g( [5 p, s3 Z
}- ^ W9 p& T6 _; S% q% c
$ s, m9 F3 f, P# Q8 a5 _) B
public class ActionGroupDemo extends SwarmImpl {4 V9 _8 X7 S8 r2 W5 k ?& a8 \8 [
ScheduleImpl schedule;) e% A! X9 d) Q( p I4 s& ]
ActionGroupImpl actionGroup;& Z5 D* i. v; h' n: I/ X- G
ListImpl list;
& r+ o4 M" S" Z. u char Id = 'a';
$ Z* T% j0 L8 m; V% t/ K
) n4 o7 H/ a' Z; F8 B* {* X ActionGroupDemo(Zone aZone) {6 h/ f) j) D" j% k
super(aZone);) K5 a8 x" n* k* W( e3 R+ e2 {2 B
list = new ListImpl(aZone);
( F/ x" v8 ^9 N# `6 v2 _& Q1 n swarmSetp();; X- {8 j% H/ P" y& X) |. f# Z
actionGroup = new ActionGroupImpl(aZone);' ^1 f. X/ f. A$ T: x
schedule = new ScheduleImpl(aZone);; T$ c- s' o% K# [- w' t
try { M/ `, w. x7 n5 @9 ]( u( l/ ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);
Q% }! v7 Y' `+ h, w' S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 z5 {1 L* k5 W
3 K4 g" t. G& S/ G3 N8 o actionGroup.createActionForEach$message(list, agentSel);; X( g4 P+ N- \- d9 i* x
actionGroup.createActionTo$message(this, swarmSel);- E- K- w! G7 `0 c; c0 A9 A
schedule.at$createAction(0, actionGroup);4 }' C ~& h% U4 v
schedule.at$createAction(1, actionGroup);
, _1 Z- O1 S; _, F9 E3 g+ F$ f schedule.at$createAction(2, actionGroup);% p- a; Z% V# i/ i, n
: _ R8 r" X8 y
} catch (Exception e) {
) I' e+ G! ~9 r( \5 B/ X e.printStackTrace(System.err);3 Q8 `: N; t& G
//System.out.println(e);
U/ y4 o8 `3 Z8 { System.exit(1);
( p. x) {; J4 w! P* N3 d }
( Q- o3 e, l2 ]7 _6 e# L
2 \& ~' s6 v; \: \
. M- j8 j0 a0 L" W, R8 k# @" o& b }4 ~. y' Q. I m: |% j1 S
0 R" Y w( ~4 K* C, S% m% F+ b3 H7 R private void swarmSetp() {! _ f2 f; u; r6 T1 Q
list.addLast(new Agent(Id));
7 x% |! u# a* c6 y Id++;
, W; {* `3 s$ g! A7 W7 m }
g# ]5 u7 J0 L: o: V7 u' g5 P5 K4 k' I$ I* i6 s6 z0 u X$ p
public Activity activateIn(Swarm context) {
) r! w7 K2 S _: ^ super.activateIn(context);
+ a5 ^: y- p* h+ j( ~ schedule.activateIn(this);
: w$ I) I9 N0 J9 o1 S return getActivity();
+ [* S6 Z' i) Q7 Y! y$ l x }
+ h; D2 ]0 I" b+ P2 C+ m3 D7 r$ o8 w. ^- m6 S6 W
public static void main(String[] args) {
) B5 I q0 G1 V* P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# F) h0 R8 _" D( @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: R, j# ^: T# ~! a2 T5 T0 v swarms.buildObjects();+ [6 _. z7 Y- z: j; M2 c* U
swarms.buildActions();
7 D5 y# D$ o( L! D swarms.activateIn(null).run();: W6 l# w9 W, T; @' S) N
}# u V: J2 T# e9 E% S* U3 `+ l* x
0 B& I- o$ n6 Y6 t% ]9 S) \4 j} |
|