|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " n* N, z1 a9 d3 G/ ^: Z2 ^
1 h7 p/ b+ l- _. H3 g) N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 b5 r7 ]+ J% M. e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# m8 q8 U7 ~7 g% [
swarm.SignatureNotFoundException
# _2 h$ B9 r8 d2 w; ] at swarm.Selector.<init>(Selector.java:76)
8 w4 K( l& c% n; a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' \/ f3 \5 L2 c0 [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 r. m1 y0 h4 b/ }7 y* X
( e" b$ I' {4 b3 k4 @3 T0 |
9 h0 D% s+ N5 Y0 Zimport swarm.objectbase.SwarmImpl;
1 q8 w' O5 O- W. f5 z1 yimport swarm.objectbase.Swarm;$ \ z: B3 a+ J, {- S
import swarm.activity.ScheduleImpl;
8 `$ l' Z* `8 fimport swarm.activity.Activity;2 K" d7 e3 R5 N* B$ _$ k: i
import swarm.activity.ActionGroupImpl;9 y) L% J: w" q/ f
import swarm.collections.ListImpl;
, ?5 q4 L2 q$ b \( g5 Iimport swarm.defobj.Zone;
1 B [' P+ ?, u' V7 D- X' @4 pimport swarm.Globals;
! `9 M* e. z3 {- d: n: T) ~import swarm.Selector;& e# y* q% F; e) t
import swarm.activity.ActionGroup; 6 i. g5 M7 {+ e" L5 Q
class Agent {' v* T# [% q. A5 y
char id;
3 a: C$ [0 e; q2 Y$ f& E
7 z8 j# k, D# h, T Agent(char id) {
4 t, C/ W t' L+ U2 P/ p, R/ n this.id = id;
" S* Z7 Z$ l- b! v. N2 { }
, N/ G: i! A% `# _% i( V; H) Z) ~
& k; V8 w3 D" f8 A public void agentStep() {
- G9 q+ i) m: e: g4 F4 U System.out.println(id + ":" + Globals.env.getCurrentTime());1 j2 Q, E S- h- b& O8 r
}
3 G; J! X; |# E}: [9 n6 x% s( f z) {- e2 J ]
$ W9 ~- O0 y$ U; d: ]; T/ d7 bpublic class ActionGroupDemo extends SwarmImpl {
. j0 X/ N) x1 A* \9 p) G! R ScheduleImpl schedule;
' e" @9 i5 H4 y/ _4 A: A ActionGroupImpl actionGroup;
) J+ Z) O& K" f6 W1 P# G ListImpl list;
, t4 h0 d; E- h" N& j char Id = 'a';
2 Y/ s4 z0 H: p/ r7 n
3 Y5 J6 h6 Z9 w6 t8 t4 U; a ActionGroupDemo(Zone aZone) {4 H7 t. F/ {7 y% P0 l4 [4 I
super(aZone);
: g3 o! b8 u+ C- }9 |" S list = new ListImpl(aZone);3 g: J! j$ }7 d& q1 @
swarmSetp();/ V/ q0 v% C# L0 Y1 |
actionGroup = new ActionGroupImpl(aZone);
% a! [3 e: m$ Q3 V( j4 M schedule = new ScheduleImpl(aZone);
# x) a2 ?9 D+ J) ^4 K1 u try {( ]" M! A, [- a1 s1 H" Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);* q2 w& F% C! S. U# u% V& y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% I4 S+ Z0 g/ h& A* J' j
5 I! D }: [/ \4 W9 [" x actionGroup.createActionForEach$message(list, agentSel);) F( p) ]7 p5 ~( F
actionGroup.createActionTo$message(this, swarmSel);
2 @" M% R& u: S" d# R- u schedule.at$createAction(0, actionGroup);
" M( b- m: S4 z% k2 C7 Z schedule.at$createAction(1, actionGroup);/ B( G3 S+ f7 ]4 _5 g( i$ n
schedule.at$createAction(2, actionGroup);& ]- K, Z \. V( j1 F4 z
. C: E: W% W! @) I& h& Y8 F
} catch (Exception e) {4 g+ J0 d3 v0 Q8 @4 _% m& a7 n% q
e.printStackTrace(System.err);
] s; d9 n& k' F$ v //System.out.println(e); `* Z$ N. w& ]% h x
System.exit(1);
2 B4 ^; v) \0 |$ B: ` }/ A1 _1 {6 _8 p- ?& {; h
: E+ ~- e8 c2 x( i$ L" Z. E2 t
' j0 W B2 z5 v8 z }
) [4 V m' n4 g+ w3 J: o8 C% n& r# O6 V
private void swarmSetp() {; e% ]% N% M$ l8 f
list.addLast(new Agent(Id));2 \" j7 o7 _0 i C/ F I
Id++;
: H5 @7 j# X$ b$ J$ Z2 }% i Y }
2 N4 D: g, b/ J- G7 \
1 v6 y% Y% z# q public Activity activateIn(Swarm context) {8 V* d3 ~* k4 L8 m6 R
super.activateIn(context);
3 ]" u; J* q E' _( W' l4 Q schedule.activateIn(this);
* }- O8 |4 P. Y+ ?; C2 z/ f return getActivity();. q5 h" i/ w7 x5 e4 X) T, y% V
}
! z% E& Z, C. E0 j* e# h. j: i/ C2 h$ J
public static void main(String[] args) {8 y6 {* i/ w$ E9 b7 `, ~* Q; v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" l$ Q8 i( b" O2 h0 J/ c( v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, Z& B2 T# t6 M" Y5 P' r$ ? swarms.buildObjects();
3 O$ P q/ @) V7 J4 ^ swarms.buildActions();8 Y. P" h; A! v0 Z# d5 Y, Q# w
swarms.activateIn(null).run();
2 s% j3 y; x0 a4 r% V1 ~ z9 c E }
5 k( W! }2 N: H }5 T* a
* K9 t2 |. [* l9 |0 B& ~} |
|