|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ x. {, v/ d) w; `$ G! d- u5 [- e+ p1 b& ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: S9 s. L/ s3 x+ }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 q. R0 U1 K% s4 j$ I/ vswarm.SignatureNotFoundException
6 z' `8 ]4 u, B2 T at swarm.Selector.<init>(Selector.java:76). \1 I/ Q) G. s1 M: n- C9 T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 O% J! W' E$ G3 }) x: G, h/ ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)' g0 h: t/ i% R
$ C0 [# z5 s0 R
* C+ z2 A7 `# H _5 o6 Jimport swarm.objectbase.SwarmImpl;
4 S8 X) D$ ^6 d5 M: fimport swarm.objectbase.Swarm; N9 I+ |2 {% x% ~; r
import swarm.activity.ScheduleImpl;
1 W+ m; t% K! @) `import swarm.activity.Activity;
5 r1 O- B' K$ W! V9 W* |import swarm.activity.ActionGroupImpl;) F# U* {0 v) I: C
import swarm.collections.ListImpl;
6 R# l; `3 Z6 i: P5 } a/ }import swarm.defobj.Zone; ! X) Y0 G! g0 F% a* }, v; ~
import swarm.Globals;! X9 X% {4 a# e$ Q9 V7 F3 V" L
import swarm.Selector;
, R* t- U) I3 t' ?0 a6 }7 x: `import swarm.activity.ActionGroup; 9 u8 J, z% B4 E9 ]! t$ V! T
class Agent {
, A# M8 p8 l! I, K) b char id;! n% V/ u: z. o! S2 y3 V" F, K' A- H
4 l/ C8 I5 \6 W$ p8 x8 a1 a* k Agent(char id) {* A: p# c: o+ F7 X1 F, P- R% l
this.id = id;* v- _0 {& }3 s) i* l7 r. K
}
; ]+ F% p2 Y4 a5 P! [/ l& F
8 g$ o. n* G6 O: t/ J5 g' v public void agentStep() {: g* P- _- G* E' W* ]0 I
System.out.println(id + ":" + Globals.env.getCurrentTime());" C0 `5 g) E0 J$ _
}5 L! o% j8 {6 Z' Z
}
1 L9 y& l9 M+ p/ Z6 k; S8 v1 O* T+ Z1 O) d+ {
public class ActionGroupDemo extends SwarmImpl {4 ?8 E4 `3 ~$ c
ScheduleImpl schedule;2 t: P: ?7 k8 }3 g% Z- e
ActionGroupImpl actionGroup;
' M0 J" h! P9 d; s4 F) ~ ListImpl list;
: O9 _& z. p' x' s7 m G' y char Id = 'a';
4 p9 m9 i9 b1 N! k
4 {3 |* E1 u- j R ActionGroupDemo(Zone aZone) {
5 z7 Q( q; c- N H: a+ ? super(aZone);- L# b2 \, L: {: `
list = new ListImpl(aZone);
1 `8 N- d$ t$ `* R& U9 Y swarmSetp();0 z- p# H3 r8 N
actionGroup = new ActionGroupImpl(aZone);( V# W5 ], ^7 X! O) x
schedule = new ScheduleImpl(aZone);( X$ g& N. D0 Z! B
try {: a2 o8 J ] L6 G0 h8 R; U
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ {- Z. @% P" L. p' `. y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 R7 f. s' \2 p. X9 r+ X
* f+ I, A/ s0 U( D2 e actionGroup.createActionForEach$message(list, agentSel);
. o9 P. [* O0 J0 E actionGroup.createActionTo$message(this, swarmSel);
3 V4 J6 G* Z) M schedule.at$createAction(0, actionGroup);
7 ]$ }& Z- k; L9 v schedule.at$createAction(1, actionGroup);
5 K5 L+ S/ H1 P8 [2 ^ E* b) _; L# J schedule.at$createAction(2, actionGroup);
/ z0 O/ M0 o4 J- E$ t6 g
1 `( p |; B' Z } catch (Exception e) {
$ X" A) y" k& e4 Z7 ] e.printStackTrace(System.err);
7 e' {/ J5 \& X4 T //System.out.println(e); D) A, H/ y/ E& _9 K: p
System.exit(1);
! u4 Q T; M/ p6 P5 q }* E3 I0 s5 i: f, l$ O' m/ o
( D* T# A) J5 z* Z+ n8 L: r: ?. R2 v( R
}" X; r, {7 F* o$ b0 L
" `) i) K* j& A4 u/ X& x/ w% i$ w0 Q private void swarmSetp() {# o+ _- f+ s/ K v
list.addLast(new Agent(Id));
' `0 K, l; N+ U: \' a5 U, z Id++;
- F+ x7 c# \2 s }+ P* o- V7 U" g3 l
6 U# L5 i! f: Q1 |, a0 D public Activity activateIn(Swarm context) {- K: U/ ~' j. L8 }# R1 r! T `
super.activateIn(context);/ B' [: U# O% {- K
schedule.activateIn(this);# {* K( }4 q# @4 i
return getActivity();9 Q6 y# p. @ ^; t0 v# ^% J# X! ^
}( L- ?( u) z- m' U. H
$ r+ q5 x ~+ a8 y
public static void main(String[] args) {- N6 s5 | k5 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 V/ A8 w) ^( y% J$ X8 U! g1 d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 ~9 E6 D, y9 Q) N- Z
swarms.buildObjects();
4 t% ?; g$ T" C K- E swarms.buildActions();
! w% s# t P. F! X+ N" J' L: e swarms.activateIn(null).run();
/ x, S% P& b$ w! G! h! |0 }4 { }
: l! A: L; A, A; e$ a: y* k0 ^- N4 C9 _/ D1 }* r6 J
} |
|