|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' p! g H/ R6 } N b- u
8 r; J+ u6 _" W B5 N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 D2 @% ]/ k: @/ j; A, X% }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., O" k* b! F/ p( B2 X& s# e& H
swarm.SignatureNotFoundException+ T% o" C$ ^8 B A" F, m4 n/ D" n
at swarm.Selector.<init>(Selector.java:76)# w; `) |8 q9 T3 `" f- k9 y) O: W9 N, m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 u2 Q" N: R% t9 Y4 l3 C+ m at ActionGroupDemo.main(ActionGroupDemo.java:67)1 W# v. a' T9 u" i: j
_) W8 X, K; t8 w
! u; U6 C# i" H9 h6 K" Vimport swarm.objectbase.SwarmImpl;
4 s- @) _- u+ l0 Z5 Rimport swarm.objectbase.Swarm;
+ i, O% ^# P( eimport swarm.activity.ScheduleImpl;: F0 q( M- Y0 B) m9 h% m
import swarm.activity.Activity;2 @" F8 S+ C) `! v- v1 C! U
import swarm.activity.ActionGroupImpl;
. c2 B3 L( R( ?5 Zimport swarm.collections.ListImpl;
8 x7 L8 d, J/ z+ u/ f6 r6 Dimport swarm.defobj.Zone; ; ^8 o0 X' u* q
import swarm.Globals;% y6 ]5 w- p9 L& E% d, r
import swarm.Selector;
. g" ]/ {" f0 N& p8 yimport swarm.activity.ActionGroup; 5 f$ Z( r0 L: u& V* y2 x
class Agent {8 ^+ p. F R2 Q9 Q6 j: z
char id;
, i; Y8 @1 A4 ?# Y& R6 b; Y( ]0 P9 f; w% U6 z3 k
Agent(char id) {
. N2 u" U, F/ L' M5 @ this.id = id;
( B: b1 f: @: N$ w, \( z }
! A: A3 B+ w p, I; ^8 I5 _4 v8 o. I5 Q: G, T
public void agentStep() {, H: O) H" y- t' v' U; w
System.out.println(id + ":" + Globals.env.getCurrentTime());
U7 ` J: c$ C3 W" Q4 ` }8 l9 J- g$ Y: S F
}
( X) e$ ?# E. V2 ~! z* _
7 M) ]" c, o& M( ^public class ActionGroupDemo extends SwarmImpl {. v4 M! ?1 N0 k Z: r& w: n
ScheduleImpl schedule;5 L- I2 M6 i [/ | i# N2 L
ActionGroupImpl actionGroup;
4 C0 }. x* P2 x ListImpl list; ]% {3 |% V5 N! y/ e+ R2 q
char Id = 'a';
" U1 S C9 I5 m
8 A8 a2 W' z- C9 {( F$ u$ ^ ActionGroupDemo(Zone aZone) {
_' s/ Z0 e4 x; ^0 S: E! U super(aZone);
- O0 T- q# G" C. _ list = new ListImpl(aZone);
' d$ s. c1 d! _, k9 k& u. o/ ] swarmSetp();
. S. d% b+ ^+ i% o6 z actionGroup = new ActionGroupImpl(aZone);, k4 F. L$ D* A+ U2 y# [
schedule = new ScheduleImpl(aZone);
! F( H% r7 Q- v+ D9 I- C, i" W7 _; p try {
5 ~3 N6 Z$ L- [- U Selector agentSel = new Selector(Agent.class, "agentStep", false);; i0 {( E4 Z% K* K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) D0 x0 p4 @ s/ d1 t0 T
; B0 a/ x3 P5 c! c! w& @, i) i2 } actionGroup.createActionForEach$message(list, agentSel);
$ A; c+ w' R3 Z6 T9 L actionGroup.createActionTo$message(this, swarmSel);
! L9 C2 T! z, j- l3 V! r5 V schedule.at$createAction(0, actionGroup);
0 B: e, n# j' I9 ^3 m schedule.at$createAction(1, actionGroup);
& d$ R/ S) w: u# m8 S schedule.at$createAction(2, actionGroup);' y0 B: ~0 |; o$ h5 u
! f R# B$ y2 C) M* c7 \9 R } catch (Exception e) {
/ ~8 C* \3 i$ ]+ i H3 F% ^ e.printStackTrace(System.err);/ }, f9 W& k5 l; c* x
//System.out.println(e);
- T- {* A+ Q' q$ G) ^( ]) [ System.exit(1);3 p/ E& D' B, O0 N% p5 w
}% Q/ D- ]* w, |( |' v; E' c% U
% s4 t6 W* W" C3 d; Y6 I5 R i5 y# c6 |: S( C
}
% a7 u6 q" J0 _, Q( ]6 L7 H* F$ ?; t& u( C
private void swarmSetp() {5 ~& G5 K0 j4 e7 ~: E, d6 y
list.addLast(new Agent(Id));
: l7 @* X8 V4 v3 |0 E Id++;
1 \7 }8 X$ ?6 b" C' \, Q4 b S }% D) e$ p. R7 \8 J d) t
O3 D% O& a q9 X: Y8 N
public Activity activateIn(Swarm context) {3 E8 M! N. c# \7 L9 _6 \. U
super.activateIn(context);$ k, z7 m ^- D! Z* B$ i2 O* V# V( [
schedule.activateIn(this);
/ H+ }9 f7 g) K, F return getActivity();( V. ^3 a" ^- d& m" K# a( g. b
}& X; u- q* I* v8 G1 U4 G
' J8 D# l- ^% { public static void main(String[] args) {3 {, d3 ?% u n- e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 r/ E) k3 a; E: T6 z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- h0 u8 u" m9 m7 a
swarms.buildObjects();, C$ n7 B, b" }) S2 S: p! B' W
swarms.buildActions();& o/ t" D1 h2 X$ r/ C. @
swarms.activateIn(null).run();
9 W" h* m1 H* }( R7 m }
: N/ F7 r0 M+ Z1 F5 i
2 n: F* ]8 Y$ |( q7 e1 `* O} |
|