|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) z/ C' w5 A, A, L6 ]; q7 F
$ J) K* J" A) y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. f4 V1 P' B& O: G9 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
_! n* U$ B, p# ?swarm.SignatureNotFoundException
% t1 {' b9 w) q8 w3 | at swarm.Selector.<init>(Selector.java:76)
. R# [0 J. {6 l2 Z5 Z% Z: V at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ `) M5 b- \" ^1 m; G% r# n
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 L2 e, f% { d5 v9 v9 @4 Z
) ? g' X4 S1 q+ O9 G' g4 }4 P. X3 Q q" W: m9 F
import swarm.objectbase.SwarmImpl;
- P5 X9 e1 V, {; C: eimport swarm.objectbase.Swarm;) ]& u- U- ]; E, h
import swarm.activity.ScheduleImpl;
4 P1 _1 W/ d2 x4 h' Q; t' Nimport swarm.activity.Activity;
+ Z! O9 l( ?4 eimport swarm.activity.ActionGroupImpl;
. w# M( W: p t; G3 T# B$ m. G" qimport swarm.collections.ListImpl;
$ Q- O$ _! K) [0 D2 Ximport swarm.defobj.Zone; , G, D, \/ T* Q+ F3 Y
import swarm.Globals;# `+ }9 b1 _1 A
import swarm.Selector;
8 l2 R( K% k1 _import swarm.activity.ActionGroup; 7 b6 A. w7 |+ c7 [
class Agent {
7 a, t* e7 ^! j, i* U6 @ char id;
3 l2 R9 o/ N) @+ x' S% K0 |! f$ c
Agent(char id) {
- z6 Z6 Y7 L; d8 P8 J this.id = id;
' j+ P) n: A4 s! O0 p$ L }; P9 R1 |* Y2 `+ o; L* W. u
. r3 I. k, A8 ^9 s; b1 B
public void agentStep() {1 y- C6 H' \ d0 r7 g W- }: E$ P
System.out.println(id + ":" + Globals.env.getCurrentTime());
, o5 a4 J% U6 ?! V }4 u# @+ P) P6 v9 T" t8 j) Z
}( k# a3 W" c; p( K! ^; T3 `
1 S6 x" M! o2 M' ?% U; l3 k
public class ActionGroupDemo extends SwarmImpl {6 p0 E) n6 `. v" a4 D
ScheduleImpl schedule;
& }7 W" j( W G! o( P ActionGroupImpl actionGroup;( p4 o# B3 g4 N% {8 t( A! x, U
ListImpl list;
# w4 \* E0 |; E6 E" Z' c9 g char Id = 'a';
" q9 ?* e: a1 q2 B* V- p7 g$ H
7 L% A4 f! y7 |2 m) H ActionGroupDemo(Zone aZone) {. L3 r) h4 `" D
super(aZone);
0 w8 d% a8 i# e9 R7 [2 z% U* k$ F list = new ListImpl(aZone);
3 _2 k9 m% o; e+ ` swarmSetp();
& h1 v' g& u! W" J5 U# b actionGroup = new ActionGroupImpl(aZone); Q# D% O( d$ ]9 q" b. D* ]. j% C
schedule = new ScheduleImpl(aZone);* F' i3 z5 u$ M+ W. Y
try {, A0 t4 x* c! R
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 E$ c1 V0 _6 F$ M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 ~. S4 S; e- o% r
1 x d0 Q3 l( J. c actionGroup.createActionForEach$message(list, agentSel);
! N* O: [8 j0 S8 Y actionGroup.createActionTo$message(this, swarmSel);
. v& _' P( W5 A+ Y9 P6 T" h schedule.at$createAction(0, actionGroup);
1 ?) P1 }8 V8 i4 n8 [9 _ schedule.at$createAction(1, actionGroup);6 I& z' }5 D' \
schedule.at$createAction(2, actionGroup);0 c" P }$ Z$ e& K9 ^
3 |- v# I: n4 r3 e+ j
} catch (Exception e) {
4 s5 j+ _9 ?. b3 }7 F e.printStackTrace(System.err);! ?* W. w3 \+ \! e% t9 F4 b
//System.out.println(e);
% o5 G, h- Y- D- p3 D System.exit(1);
: X( x5 D' Z8 i2 x- n# u }
: E% j1 `4 r4 G' Y% u+ R6 G% F
T! ?+ n: Q& V% Q, z7 Q% A0 X; Q" G% i/ K0 ~+ C: N
}
! l3 Y* P! L& O4 G3 m. h6 u3 ]1 o, N$ V- Q, m7 ?$ v7 E' T, ]$ Y* g
private void swarmSetp() {
$ L2 D; `+ p7 R* ^, Q. n0 |# U @4 F list.addLast(new Agent(Id));
% M; s" D$ j9 m& I0 X% }* i$ w Id++;5 {; \: A. Q- ~# f! u4 Y
}2 Y# l% j; |- z2 ]9 U" y( o% j# R
3 B' m6 F! T8 y; K* a
public Activity activateIn(Swarm context) {
* Z1 G3 |2 f0 t( Y0 }" S super.activateIn(context);7 ]1 i2 y ]) X4 H* V) X, Y) d7 I
schedule.activateIn(this);
$ W0 |% ]$ T& h ]4 Y8 o; D2 P5 V return getActivity();- t, [# T! y8 m, D' B
}" z, c ], C5 o# b8 c. _
T! F1 H$ _# z public static void main(String[] args) {) ^: ~& `' x8 a
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 O. g9 |/ m. w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! _, }; k/ c2 b( K+ d
swarms.buildObjects();' O6 @* h5 m" ?
swarms.buildActions();$ Y# _' }9 @. F( U# p9 b
swarms.activateIn(null).run();
) r! |" F0 E2 c" U }
# C2 F/ c$ w% G
3 u- Y+ i0 D/ j} |
|