|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 s- w8 |+ P3 \* V( p+ l
& e/ T r, M, n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 O7 b# T5 R1 u1 w+ M, q6 b, ~( ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* d6 H5 A( R( t) U5 l, j
swarm.SignatureNotFoundException
7 D" o# u* x: O! q1 I8 L at swarm.Selector.<init>(Selector.java:76)* g9 v4 S8 H) N; f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& ^' v2 b( [/ e5 r5 Y& \ at ActionGroupDemo.main(ActionGroupDemo.java:67)
: y3 a( Z& J; I. A J) i' y1 m! X$ x' y# @
* {+ J& X- E1 c9 m
import swarm.objectbase.SwarmImpl;
+ o ]8 Q+ ]4 u3 i$ }2 rimport swarm.objectbase.Swarm;
& l* E! }& m5 Q( ximport swarm.activity.ScheduleImpl;
9 O9 f9 ~7 t7 {! N) f9 simport swarm.activity.Activity;6 \$ v2 t8 i( r; `' F9 c+ P) `
import swarm.activity.ActionGroupImpl;
3 W" O+ }! Y4 V/ Y7 i5 j5 V: g. @import swarm.collections.ListImpl;4 f( k+ I8 { \9 f, b* i1 T- b
import swarm.defobj.Zone; ! b0 t- O9 S9 o9 `/ L) t C% l* y
import swarm.Globals;. I M: V( D4 m+ E+ A' r5 z3 I( ]% ]; Z: w
import swarm.Selector;
. e1 N1 c1 x! R( qimport swarm.activity.ActionGroup; % ?; U; c/ Q' d# o0 c6 u2 ~
class Agent {# r0 T3 P k7 l( j, w2 f2 c) @3 u
char id;
, \8 ~* }- J( p. {
5 K7 f/ h. b5 b: | Agent(char id) {+ B9 q. t8 n5 p5 Q3 {3 y6 ]+ G
this.id = id;- |. Z$ q' m: ~9 M. Y
}4 m! Q* C" T J$ ` b# _! Z7 O
# i ]" @2 b0 B& k
public void agentStep() {' f3 t8 u. n. Q- G9 w t7 Z
System.out.println(id + ":" + Globals.env.getCurrentTime());
! v8 P( |* \: V% P. K }4 v7 z0 F( D+ t# L( |& X2 q
}
! M$ I: f. H- W" z3 l
# G$ i6 y' c" S; ]( |6 }public class ActionGroupDemo extends SwarmImpl {
5 C6 ~8 f$ Y7 U% V: J$ P ScheduleImpl schedule;8 p7 Q. w* G( C
ActionGroupImpl actionGroup;, F! y4 \$ b2 ^* s4 X* w! O1 u- i
ListImpl list;; m: k! `/ X( X0 w6 N( {
char Id = 'a';5 N: e/ _( t1 R, T- o3 m
% V _) f6 x$ t0 @# T0 e" L ActionGroupDemo(Zone aZone) {
# o) N& Z3 V) U; }' `# N0 ^ super(aZone);% V; @ }% }2 P! w7 A* B
list = new ListImpl(aZone);
+ n' F1 x u# K% w) M: n. y swarmSetp();: T# R& J7 q: O( h
actionGroup = new ActionGroupImpl(aZone);
2 w9 E% w( A/ q/ Q schedule = new ScheduleImpl(aZone);9 P( X4 ?' ~7 [% m" L) j
try {
. i' f4 o# E. s Selector agentSel = new Selector(Agent.class, "agentStep", false);, w7 u7 C( C( @7 @& y) F+ f) Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) {; \. S$ S$ f, s; p: K: H
8 h5 A# `2 x# I: ^- V$ D
actionGroup.createActionForEach$message(list, agentSel);
4 Z s7 g9 m& d actionGroup.createActionTo$message(this, swarmSel);
8 x% [* H7 `( x5 S& w) z5 c+ i4 I$ I schedule.at$createAction(0, actionGroup);$ R( \. m% b' n; p
schedule.at$createAction(1, actionGroup);
- z: N. R7 A5 w9 f% l4 j' _ schedule.at$createAction(2, actionGroup);/ ~9 w$ H* j z. K0 W0 ^& j
* z$ C0 p- {' d) \ } catch (Exception e) {/ N6 S7 v* V$ y, t3 s) e( M% m. a
e.printStackTrace(System.err);
: S) I# k+ w9 F7 V& V; N+ U1 \ //System.out.println(e);
1 X6 w% s. P1 f X2 b) V System.exit(1);4 I& V' g2 j/ D9 A' z
}
% a, x( i: z% x4 ?% o" J4 L* A! I0 @. v7 H+ f
/ y" D g1 E- K6 R5 j9 s3 j }8 h6 t! T4 ^. H
$ M) {; i6 L: s( e p
private void swarmSetp() {
8 \0 i6 u: T6 u9 M% V list.addLast(new Agent(Id));
W( K8 N! F. X9 p+ V1 S5 G Id++;) N$ \8 `* h p, f
}1 [- ` M) x, g/ }
* C2 U* A6 I' s6 D
public Activity activateIn(Swarm context) {3 @8 l9 N. H. k* Z5 b/ W
super.activateIn(context);9 L3 }: H# F* I
schedule.activateIn(this);2 H" m/ d. P) E7 V4 _
return getActivity();
5 O9 {2 J2 w1 Y2 @8 ], ]. k }
8 \. w( h7 ~% X7 ~9 c( e- Q5 c& R4 N3 j; A/ i0 K% Z
public static void main(String[] args) {! \0 s8 j/ B! e, V8 L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, @. @* Z% C g% U6 C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% Y2 B% u( y5 [4 f1 L* J, Z. x swarms.buildObjects();
1 \9 H8 ^9 I! P% t7 H& U4 L swarms.buildActions();- V, C3 t5 s; ]7 g% i
swarms.activateIn(null).run();% m; o; }0 I3 |+ n$ t4 _
}" O" ~+ _" a7 \0 m* @2 F! F6 v
8 G4 Q6 h S# v0 n
} |
|