|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , P- d' B" q/ h3 i5 ~# M5 u, S+ ^
% d: t. F" Q/ q2 s% j: F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 ?: W' L+ o" P y2 _3 m% z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 [, v& B; P( z! q3 r. j
swarm.SignatureNotFoundException `) D9 p9 L/ ^
at swarm.Selector.<init>(Selector.java:76)
$ j$ W+ E$ f) I7 n I0 Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 Z4 R8 Y0 z, m4 \. d# c; E
at ActionGroupDemo.main(ActionGroupDemo.java:67)
' G e5 m/ G. d4 I! @4 ~0 s; ^' ^- S3 ]3 w
3 ?4 Q9 P" O+ Q/ p8 v3 O
import swarm.objectbase.SwarmImpl;9 n% p5 `2 A! p
import swarm.objectbase.Swarm;
# h* V7 J) o! U7 x. Limport swarm.activity.ScheduleImpl;0 C8 U1 L5 M, W& F/ Y% r3 P3 s
import swarm.activity.Activity;! w3 {$ u5 } X. U% y
import swarm.activity.ActionGroupImpl;
" u/ h1 v+ h$ s7 Z# ]6 W! Bimport swarm.collections.ListImpl;+ v2 c3 U* U9 b; V
import swarm.defobj.Zone;
( ]9 D! f/ G7 h3 E2 Vimport swarm.Globals;0 \5 x* B. e8 G3 j& P, B5 _
import swarm.Selector;
% J4 e2 h7 k& b0 G0 \" _6 Bimport swarm.activity.ActionGroup;
4 J* ~$ I! }( F( V8 o1 u& Z2 u" jclass Agent {4 d. e3 V' |) G+ s& G
char id;' f! g7 W! [6 Y3 S5 u
! {3 E0 D1 j9 B1 T Agent(char id) {8 h# e" i7 m4 E# D2 f* _
this.id = id;
% l# E' W6 L- d }$ r2 ]1 q; D( D$ g
. {' K+ g5 `; H& `# y
public void agentStep() {
1 |0 b/ D; m! Z+ r6 D System.out.println(id + ":" + Globals.env.getCurrentTime());
$ B4 g' x& c# E$ X }
3 y- b) ?4 F" D* e/ `& i/ d}
7 _1 f% o+ N& D Z' p& x, @* v$ [+ g# q0 a- `# A; R
public class ActionGroupDemo extends SwarmImpl {
9 g) w$ q% P& L7 f$ m ScheduleImpl schedule;
s7 f+ O" w* N0 c3 x ActionGroupImpl actionGroup;
# _. p) p/ ?$ J, i; K0 V9 | ListImpl list;
v. U1 y3 F# U$ n# c: ]0 Z char Id = 'a';9 A# J+ F6 v# Y+ [7 k. b; F# j
7 P, S, t: S. ^1 \) E* h' ?
ActionGroupDemo(Zone aZone) {
* g; s9 R! \- q+ Y super(aZone);
' f6 ?8 k. x: p( g+ N. \& G! A+ ~ list = new ListImpl(aZone);% n# w0 b1 L4 q$ a& h
swarmSetp();6 I% X. w' x4 O" h
actionGroup = new ActionGroupImpl(aZone);
1 d! t- A5 Q* ]) {: A( ~+ H. J; \! x schedule = new ScheduleImpl(aZone);
. E- i2 H3 B5 z try {
7 v! ]; p3 `" f. k" l5 V+ Q Selector agentSel = new Selector(Agent.class, "agentStep", false);3 ]& d- e7 F3 f& b) H* {5 `2 Y6 e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ ] B& u, X4 z% _
6 [) P* p. `6 O [ f actionGroup.createActionForEach$message(list, agentSel);
? a1 D) N) l/ ? D6 [# l actionGroup.createActionTo$message(this, swarmSel);- z8 `7 {* t6 x. w( S+ w5 [
schedule.at$createAction(0, actionGroup);- e7 v) F7 `: f4 l
schedule.at$createAction(1, actionGroup);; `: ~6 x7 v" Y) l0 j0 m! Q8 ^% y) d
schedule.at$createAction(2, actionGroup);
& q" {$ |) R+ r0 _3 f- x- j: X( W
; H) i/ V; K4 E/ L3 i } catch (Exception e) {6 u! X2 x* j/ L! d4 B1 A6 c
e.printStackTrace(System.err);
+ g2 z, q4 T4 ]: R; c //System.out.println(e);& i l3 B1 j) p; U6 |# B
System.exit(1);' a! p( k( t: m
}; q! R/ l3 F- b5 U4 W: \
0 [/ [) \% q5 ?: R# {! V
; q" [ T% |, D( _7 K* m
}" ^( l! Q: S. M$ @- i* |) U% l
2 Z. W' A. }& v3 g4 ~( l! @
private void swarmSetp() {8 {+ `- H: [4 S
list.addLast(new Agent(Id));
L2 o, X4 t7 i7 O8 B$ ` Id++;
. s7 p. M9 j- U M }6 d6 y O! ~$ @4 }8 O( j) \
1 z* G/ q6 ^. k
public Activity activateIn(Swarm context) {
; E$ ~- D# `/ z! [ super.activateIn(context);
5 `. @! q# @/ C; E+ j% b: p schedule.activateIn(this);
( T! X3 g. k+ I' Z return getActivity();7 \5 e ~( X8 ?( ]# p" L, Q8 s
}
. Q7 O( n" b$ G1 W0 e1 ]+ t( [/ i! T$ F; n" a, A3 t' Q* g
public static void main(String[] args) {
?- P* z3 V: K& } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- Q- c8 _: V/ C# p6 v, R- g* { Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) B( ?) f/ O: u9 i$ C; i2 D8 B, C2 Q swarms.buildObjects();
" j! b a" o9 J2 H swarms.buildActions();# O0 u8 b8 y9 Y2 V+ k3 b4 b: R# n- a
swarms.activateIn(null).run();
2 A4 D; R5 P3 h1 I) [ }& s" O# D' ?1 K* I
. j' m' f, l8 O9 N+ t0 t} |
|