|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 g. U/ b+ O6 \8 L% l0 [( [3 j/ x4 ?9 I% S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 l, y- d Q) c) j, ~3 e1 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ v9 j% X/ C& I2 _; S7 F U4 Xswarm.SignatureNotFoundException
- P8 R% @2 G- g, \2 @' ?" q at swarm.Selector.<init>(Selector.java:76)
! ~5 o! ^3 A9 [, H5 v8 w1 q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- ]- m: j F& n4 f- C3 F; Z# | g6 M: c at ActionGroupDemo.main(ActionGroupDemo.java:67)/ G1 f* `7 U; T' j8 g0 r
, U" h& o. C! u {" n2 ?4 r
% T1 C8 }" f/ }$ n% X' a! b, D' yimport swarm.objectbase.SwarmImpl;; q4 m6 ^ B. R0 w4 ?- `) d. T
import swarm.objectbase.Swarm;, S X2 G" e4 m6 w$ p+ B
import swarm.activity.ScheduleImpl;! t: r8 G. ]; S5 N6 x) d
import swarm.activity.Activity;
! X9 _/ r+ a, i) F3 h1 [import swarm.activity.ActionGroupImpl;
. o2 h, V2 N+ cimport swarm.collections.ListImpl;
) g9 y( a) J9 ?& N% s8 ?, [3 Simport swarm.defobj.Zone;
) W, s; Z4 q% |& V% jimport swarm.Globals;2 _$ I& _2 K0 W
import swarm.Selector;' t/ t; e `' W. v6 r
import swarm.activity.ActionGroup; ; z6 T# v/ S3 r' f q
class Agent {' Z2 H2 i F1 T4 _
char id;
& M$ N1 a) o/ ]- ~& U: |" W' j0 `
2 `0 z. I6 g, g) G1 G9 Q4 m Agent(char id) {% A f1 [3 P6 ?2 c" E) Q! B/ D- O
this.id = id;
. f" I+ V& f+ |, J! y6 @ }
( H+ q" Z. T& @, Y
* D) Y' G7 |7 j# H public void agentStep() {
7 n# e! V# l: P System.out.println(id + ":" + Globals.env.getCurrentTime());( H/ Q$ C0 U7 X+ E/ H. o
}' {. y4 A% r3 a: `2 G( y2 G6 X
}- b" _: u5 s y
* R3 f. t; @+ j/ ~
public class ActionGroupDemo extends SwarmImpl {0 r, `# A& z4 A: q$ _/ o
ScheduleImpl schedule;
/ \* [$ \: Y- |/ L ActionGroupImpl actionGroup;- t! F+ U6 A" H
ListImpl list;6 x: Q/ P6 \4 x' i
char Id = 'a';8 | f9 R/ T% V. X9 x7 q
4 q! h; E$ _0 b1 W* R, G3 e
ActionGroupDemo(Zone aZone) {+ }. Q7 K! s1 u5 X4 y3 l# d$ r
super(aZone);
' `3 p6 C6 \' ^: c3 U list = new ListImpl(aZone);7 L. e, ]* U. u
swarmSetp(); S' f4 C* b. M' F: Z0 r# F1 Y
actionGroup = new ActionGroupImpl(aZone);! Y% ?3 f' h' z1 i: s
schedule = new ScheduleImpl(aZone);
* b6 I- h$ @' Y try {
9 j, p: ?) n4 j6 {* }: Y& x4 e Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 F5 V7 n, ~8 R* ?. u2 F" S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 o$ d5 {9 b. @9 G- A
/ p; p6 W" _" V9 m2 |# Q" l
actionGroup.createActionForEach$message(list, agentSel);
9 E# S% ]; m. G: I N/ T actionGroup.createActionTo$message(this, swarmSel);; P. u. ^1 @1 s9 v
schedule.at$createAction(0, actionGroup);
) M. H5 @/ `9 R3 A" e% E schedule.at$createAction(1, actionGroup);+ p; G% k, Q' |# ~& O
schedule.at$createAction(2, actionGroup);
$ L! [ f6 o- O6 s w% M. H
. V# k8 E( ]% Q+ `# F } catch (Exception e) {
2 s4 j* t1 j; h1 Y. ?2 x) h e.printStackTrace(System.err);
; ?7 c' T( y3 v' Z- J //System.out.println(e);
# P& V# ]) U) x8 A( Q System.exit(1);2 _: \6 X# d: E
}
4 q; }( Y( x+ u/ c4 w3 N, m' P
9 ^, q: ]7 k0 k2 g
5 i/ b% p2 j; I0 r! s }
( j$ y7 F/ P) F8 H9 c0 G7 q$ [: t3 w r! n: c9 T; k
private void swarmSetp() {
7 Z0 e5 J" Y: K. E list.addLast(new Agent(Id));5 s$ g& F' j. s* {$ }# W
Id++;1 I& X6 Q& e' {3 l
}
5 u3 l1 e* k# j7 S% i0 [
6 }8 A/ {* t# A- {- H/ W f public Activity activateIn(Swarm context) {
. s0 O; B( ^# R$ h1 b5 f6 X super.activateIn(context);
; w9 q/ x2 f% N7 r schedule.activateIn(this);! F4 r1 ~$ Q T* d) ^- k9 L4 b- [3 ]
return getActivity();
/ c6 M$ Q" } O& P } J* l I$ x2 t
, i0 x' ~, r$ |# w& N: K5 q
public static void main(String[] args) {& f/ |6 H2 |0 C% X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- H' d6 E5 v$ ?9 C/ G, A, c N8 c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* W5 O: ~8 c+ Z$ N: k5 W swarms.buildObjects();2 h1 ^; _2 c# w- \: q1 W K$ @
swarms.buildActions();3 n9 i5 z# Q' T3 f! a/ V2 D( `7 C
swarms.activateIn(null).run();( d1 C$ K9 X$ A; s
}2 R% }$ O8 L9 x& o5 O- m7 X, F
: t `: H: T% A! y& t* S} |
|