|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& J" k2 {8 l5 p% |- R4 `9 V3 h& K! {, S3 U. T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 Y, e7 Y8 P) r( R% G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: D1 y8 R) l# n/ j c
swarm.SignatureNotFoundException
2 B# p1 {0 t! i' P$ v2 o$ q at swarm.Selector.<init>(Selector.java:76)2 s6 d" f5 u3 c$ M6 v' F& L. n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% c$ |+ v+ P7 Q* l* ~ at ActionGroupDemo.main(ActionGroupDemo.java:67)
. g+ E# S. a0 p' b+ ~% k. D" b+ j: b+ z* z
0 c) T8 t& V1 I: |
import swarm.objectbase.SwarmImpl;/ v7 l) d2 {# V, b4 ]4 A8 B
import swarm.objectbase.Swarm;
$ K' H# s, `# v+ Q6 M3 Iimport swarm.activity.ScheduleImpl;% e" S k( `+ \' m5 J, Q' V2 F
import swarm.activity.Activity;0 `" T! l! H% Y# k8 z* y+ |
import swarm.activity.ActionGroupImpl;/ D8 }3 C5 \9 X R
import swarm.collections.ListImpl;
. `. ^+ H/ t# i) E: Z6 yimport swarm.defobj.Zone;
6 z3 u& O& \2 o4 [0 Z# x+ N3 q' ?import swarm.Globals;
. v7 b. _. U% \2 _/ A; K! R5 Himport swarm.Selector;. \# l1 u/ D( p" t4 N" X# C. t
import swarm.activity.ActionGroup;
6 T' J5 M! e# n2 P1 @. u3 L3 `class Agent {: L @4 E" _+ Q0 o! R; Q% D! w
char id;; z, @8 G) {( z
4 a$ q! z6 ^) P& |6 y
Agent(char id) {
4 m! n7 P0 ~1 {( O8 z this.id = id;1 e: q8 {: W0 H7 f" Y( A7 Z) G
}- g) O- P5 e/ L$ E+ G9 f
: ], _8 e& H/ `/ S* j0 {, \; J8 Z4 e8 o public void agentStep() {
3 Y/ Z; P; J( u a; H System.out.println(id + ":" + Globals.env.getCurrentTime());) |4 e* i4 q# y) E
}
" H2 N' U+ t7 T$ {0 I) O k! Z}2 v9 t- f, A; \- Q$ C' S `# _
% [7 R; S. ~, S" T
public class ActionGroupDemo extends SwarmImpl {: f! ^6 g. ~: L9 J. \
ScheduleImpl schedule;7 z( Q$ @! F& u" u! v- d" _
ActionGroupImpl actionGroup;. Z0 I: t& |7 z7 g
ListImpl list;% f& y! G: J, e) G
char Id = 'a';" h- h1 U0 v& w+ D* \
# J0 L- V7 H+ \: ?6 I0 y4 ~
ActionGroupDemo(Zone aZone) {3 Q+ v9 P5 q! o' F5 y, |* A9 H: g
super(aZone);
+ L7 }0 W: P- V3 y% Q- n' O8 T list = new ListImpl(aZone);( W- l& Z" K2 J0 L) l. E, G/ A
swarmSetp();" G) B, {& ]& V7 Y/ @: ]
actionGroup = new ActionGroupImpl(aZone);
/ w$ E9 [" H) C# q, C; q% B6 Y schedule = new ScheduleImpl(aZone);" Q- O& D$ V6 Q- X
try {& V$ x3 c ~7 _- K! _4 r4 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 k; [1 t! \3 N" t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ Z0 c( _8 F, p$ Q1 K5 b" b6 L. e / m2 K# J1 t* U) C, {7 o) J
actionGroup.createActionForEach$message(list, agentSel);
6 ?- ^% Y% l2 ?/ J z3 j8 o/ v actionGroup.createActionTo$message(this, swarmSel);+ }/ R) l" V c0 `4 E+ W
schedule.at$createAction(0, actionGroup);! E% T. `+ Z: ?
schedule.at$createAction(1, actionGroup);
% p3 g+ @/ h8 w0 x& |6 E, u/ m schedule.at$createAction(2, actionGroup);
6 \* A8 g' I6 N
x3 A( N: K8 D+ o9 X ~ } catch (Exception e) {
2 V' B. N* D' F! f e.printStackTrace(System.err);0 J8 M, C, R- j' N( O7 j* y# ?
//System.out.println(e);. c/ n( `' Z5 T6 ~/ `7 w% a
System.exit(1);
# N: w9 R0 O8 E) Q9 w! L }
+ V7 R6 W- m0 v* d$ M
/ W' H9 @% y% G9 c$ ?% g9 [
{: T$ P5 L) m. l+ U2 f }
/ J, z0 X( [% i5 I" i: M- T# F8 f1 O- ?4 O1 c8 C2 O
private void swarmSetp() {
( v$ }3 x% C: p' ^1 V" N' V) {* ?& ^ list.addLast(new Agent(Id));# x( P2 J K T9 L2 O. r) |
Id++;
3 V4 Y9 _; D/ G% O/ J: o, Y }( U5 Q3 A* |$ D+ M$ B6 G6 d* }
0 x! R4 f9 w4 {5 v2 R! ~# g+ L public Activity activateIn(Swarm context) {2 n3 `/ p9 v, A4 p
super.activateIn(context);0 {4 ?$ {5 ]6 ]7 A1 I4 W
schedule.activateIn(this);
8 F7 @6 h; i; C. { return getActivity();
' P3 y$ C4 a8 L, Y% \; q6 L }
2 h, l! M, j. F& t& J* ~8 I1 o) i4 c+ z
public static void main(String[] args) {
8 s" c- J8 a. P& L Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 C- c, {+ l1 i* k# e
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 Z0 g2 D7 n# ?# o swarms.buildObjects();
. r& f8 K; X# {( g& L swarms.buildActions();
9 _* o& T7 _0 J/ h! l1 ]( [ swarms.activateIn(null).run();9 a: G- C8 Z) e- C4 M
}* R& q/ |& m; e
/ i2 C' F! Z- v& Y' @& |} |
|