|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 g5 y8 s" }' L3 e' C
, c" {' h7 A8 S: q2 C4 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 i8 T* \1 U: n ]* [0 W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* @% Q4 \% Y l) |2 w5 `- s/ |swarm.SignatureNotFoundException
( z9 K) ^5 w% g2 V- F. { at swarm.Selector.<init>(Selector.java:76)1 p0 ^1 ^1 A+ f# m1 X) m W
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ q! K" Z \) o" `, T at ActionGroupDemo.main(ActionGroupDemo.java:67). H. |$ W" p/ }9 N
) h, s: d* r' x% Q. s# a5 r" Q
1 a6 u* k+ b9 K9 g! s4 Uimport swarm.objectbase.SwarmImpl;
( r* C' D& a- U! rimport swarm.objectbase.Swarm;: x- |9 V0 G& E! }. E( @/ D7 L
import swarm.activity.ScheduleImpl;
. _. E# Z) z0 dimport swarm.activity.Activity;; q0 S+ g2 b; F/ d2 i7 _; w
import swarm.activity.ActionGroupImpl;
) x/ t0 T/ r5 D' R, n4 Eimport swarm.collections.ListImpl;$ ?% ]$ Q: c8 W& ~$ y
import swarm.defobj.Zone; . [: S$ u; v& {" U: t
import swarm.Globals;7 H7 g2 h& H) S: a& k
import swarm.Selector;. \; C" `) \/ v4 \+ S
import swarm.activity.ActionGroup; : T; x: ?% B, X8 [5 C
class Agent {8 z6 |0 i! k1 N' o4 c5 W
char id;
+ J$ a" t8 k6 @+ ]! N# z3 s( S: y% C& N" T3 p" `
Agent(char id) {6 q& b# b' v% e
this.id = id;) v `: l/ T5 \0 B/ [
}
' y, @7 g# V% K3 z6 b3 L) W/ D* w' X* _0 f; E4 g# m; n% Z
public void agentStep() {
' T7 w5 h/ {1 @4 N( V) u7 P System.out.println(id + ":" + Globals.env.getCurrentTime());
4 L$ c1 p) \' z/ t$ `; o }
Y- b, s a, ~}
& a. j% n# b4 n }
2 l9 v+ |) b2 m) }public class ActionGroupDemo extends SwarmImpl {. e7 I% D" K7 w. C# V {! s5 Q: p
ScheduleImpl schedule;. c7 Q1 }* S% t' S
ActionGroupImpl actionGroup;
1 A) G8 s3 k3 w8 a" c' t$ k6 n6 L, x% p" j ListImpl list;
% Z3 k2 k9 d/ b V. A" Y0 J char Id = 'a';8 P. B: I% @8 K/ O+ L9 C! ]
" _4 N% F% N6 h2 {; S) O9 B7 X* E ActionGroupDemo(Zone aZone) {
& J5 P6 f% Y" N `- } super(aZone);5 I4 a( [4 M, ]: c3 V
list = new ListImpl(aZone);
- ?% s& @2 o5 l6 |0 J. d% E' @ swarmSetp();* \7 }7 m6 s! w0 C7 v" g
actionGroup = new ActionGroupImpl(aZone);8 I$ p/ j7 S& Q' L! M* c
schedule = new ScheduleImpl(aZone);
3 W5 A8 ~ d" S try {
- Z8 e- H+ o0 B! b) ]0 _* k% \ Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 E/ X6 T, |% z2 a3 G' L0 L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! |* m8 h5 g# `6 f7 F
: R& R7 M9 P) O- n& E actionGroup.createActionForEach$message(list, agentSel);1 \& a" n8 R& g8 O: l
actionGroup.createActionTo$message(this, swarmSel);
/ C$ a/ N. k9 C schedule.at$createAction(0, actionGroup);" U' g7 N9 y9 |9 D6 t1 E2 A
schedule.at$createAction(1, actionGroup);' V( C; P6 w8 Z. q9 T. t# z: Y0 y) V p
schedule.at$createAction(2, actionGroup);
9 s0 o7 n2 D9 J) ^- [ ^! f6 P" X1 P1 [8 @7 F. k9 M8 n9 n
} catch (Exception e) {" A% Y X, e3 f
e.printStackTrace(System.err);
9 M0 W0 E; F, B# G c, ^2 Q T //System.out.println(e);. v8 V5 E6 N& A$ k- s
System.exit(1);: ~3 N# }# d3 g Y$ u
}( m; X5 c0 h6 _
0 L! k/ O. K" n( w1 p0 B9 I) l
& K1 Z; q# l `; v9 y% e& Z9 o/ Y e$ X }
" q8 u9 `9 ]: E% n" r+ s
8 J. [/ v9 [; f* h( x private void swarmSetp() {
$ b9 p+ u5 g; ^5 w1 o. g list.addLast(new Agent(Id));
4 _' T) L+ _! O* U; d Id++;
4 W5 t6 ~( }/ K }7 `2 m- h1 {: f# w
5 H2 w0 f: [$ w2 g2 f
public Activity activateIn(Swarm context) {2 M- V0 M# U2 r3 H& \' @( K W
super.activateIn(context);3 ?9 a( n% m0 z: Q! I
schedule.activateIn(this);
/ X5 H: p5 b# N7 S' P& n8 o return getActivity();0 m! |0 I5 ~3 l% E1 N
}% q5 S0 m2 u, }% A$ n
# I! r$ j( Q; s- s7 {; z* F+ F
public static void main(String[] args) {
2 v( s C S3 _% ? s. f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) m+ o" l" W T Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. N* e! I. A- ~* } swarms.buildObjects();; A8 L; Q) ] ]1 n) s
swarms.buildActions();9 [4 `9 l' F5 o" z0 b
swarms.activateIn(null).run();
% ?- l' f k# C" a0 Z1 T4 q }
* H7 H1 S3 B t( b1 f7 ~- I: t
; h8 W; A0 n" Q} |
|