|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ F$ C* \2 W, X' s4 q" _- n
& a6 Y! g8 x: {. ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ J x7 m, x. S& i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. d* R$ c) i: {
swarm.SignatureNotFoundException5 v% X5 T& f0 K l. t9 t
at swarm.Selector.<init>(Selector.java:76)
6 a# Z8 h) x3 K at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 e' m' F3 a% a, k
at ActionGroupDemo.main(ActionGroupDemo.java:67)" {' \8 J- f l# p3 L2 D
+ }9 _4 g' a' n1 y# M2 `# O/ X
* ^: R/ p) t! T: C$ j: E1 C' z
import swarm.objectbase.SwarmImpl;
h9 R$ ~# n; Pimport swarm.objectbase.Swarm;
& k# w7 S) Q" Limport swarm.activity.ScheduleImpl;
+ ]$ ~1 X3 Y( |+ z' w w3 c+ zimport swarm.activity.Activity;9 M. ~- h) x) o5 `1 Y- M
import swarm.activity.ActionGroupImpl;& M0 j! E, P" X9 X9 L- g/ U) T
import swarm.collections.ListImpl;
; \9 A. M, F5 Z V6 G! aimport swarm.defobj.Zone; 7 w9 }% I: D8 t7 B
import swarm.Globals;9 ~. i; w1 r6 Z8 P8 B$ @4 T6 v: Z
import swarm.Selector;
3 k5 _% Z+ u% ]# ]3 W! ^import swarm.activity.ActionGroup;
' ?/ ?. P8 q0 `) |class Agent {
, k% k; `5 n9 |5 G/ H m1 d7 n7 e char id;
3 J0 k) [+ d1 C7 i2 w
/ A+ Q4 [6 A; x: c Agent(char id) {
& L8 W+ q* ?, C% L7 x6 K this.id = id;
. p- o) z E, u; d; [; R; F }
( W: S5 [3 m# h6 ^/ s1 z4 I4 W
" i. S8 w& }6 g3 k public void agentStep() {' v1 _& b) y( ]8 i8 `
System.out.println(id + ":" + Globals.env.getCurrentTime());3 R" v( a" X' @2 `
}( i3 D6 v% E+ B( p9 x
}, {( ~; ]1 C8 Y6 U( h9 f
, z* f& L- ^$ S# vpublic class ActionGroupDemo extends SwarmImpl {! ]3 x4 G7 I3 _& ?4 x) K3 `" A( ?
ScheduleImpl schedule;
' D8 @8 b1 Y4 r4 N1 s! o; R ActionGroupImpl actionGroup;0 R) a- p+ e9 F# W$ ]* D
ListImpl list;
3 n2 I% L) {! A) c' a2 O0 j- r& ? char Id = 'a';
|. r& a3 N0 l! b( K! E. r; D
8 m. X, }; C4 B4 \ ActionGroupDemo(Zone aZone) {$ }) T9 X6 }* E! F* r3 Q
super(aZone);- r' p5 @& M3 N
list = new ListImpl(aZone);
9 T+ w J# E/ q# m, A7 _+ u, q swarmSetp();
4 f+ b& [& }: u( z( [' x s5 U' } actionGroup = new ActionGroupImpl(aZone);4 K' N& D3 d) k+ B$ h o
schedule = new ScheduleImpl(aZone);
0 v7 {! r3 b! c _ try {; q1 @" ?( b3 f+ L' J+ x
Selector agentSel = new Selector(Agent.class, "agentStep", false);% m% Q0 } B; ^& q3 ?* s; V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 O" U# Y) X0 I# H+ m4 w: Z6 n
8 C8 Y4 Q! G' L) S actionGroup.createActionForEach$message(list, agentSel); D- u& c8 x- N& w
actionGroup.createActionTo$message(this, swarmSel);9 X$ C- P" T2 h1 r2 S0 S
schedule.at$createAction(0, actionGroup);
' k+ Q( E$ s3 o9 f) J: `- [ schedule.at$createAction(1, actionGroup);
' Q! o8 p2 }! i7 ]4 A) i schedule.at$createAction(2, actionGroup);
2 A! @8 ~# W) h8 W* ?1 G* l g$ J+ M$ m: ]: S7 {# f% f
} catch (Exception e) {
' e- S8 m, z4 P! _ m) ^ e.printStackTrace(System.err);
' R! M- C8 Y! U& V //System.out.println(e);2 S; t* F5 o) U, T9 L; G* A, G: r7 K+ k
System.exit(1);+ ~3 R; ^5 w" I4 R4 I% U X6 L
}
9 x4 e5 p" S9 Z) x1 D
0 Z$ y' m' C; w' X* ^+ u; e5 Q4 O2 w
}& O6 A& R9 ^. |2 {, ~; _7 K
) j% J) e% A( J w! { private void swarmSetp() {
1 \1 O2 c4 G( ` list.addLast(new Agent(Id));3 s0 V& Y2 G9 ]( C
Id++;
6 H2 k Z p# H* s }% F: t9 b" W0 y! ?6 Y5 @ J
) G8 |' ?" D: c; k, P* P' Z0 M0 N
public Activity activateIn(Swarm context) {# _* N: J7 S, D" m+ m7 L
super.activateIn(context);
! b L* E3 m: y. ] schedule.activateIn(this);
; m& u$ y, _6 Q4 U return getActivity();4 f8 z R- d$ M" s4 E) n3 P# I
}
7 [. X' Y! C! f, Q* J* q
; U' F* J9 P* M- a% C6 S* P5 R# M public static void main(String[] args) {
$ F) ^$ m8 ~% _- u$ Y& ?2 p: q- ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. W" N8 U5 v2 j( b/ y5 l Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 L; Y0 [6 z0 E+ s Q- J swarms.buildObjects();
% d7 h& m2 A: f8 s4 i9 p! d7 E swarms.buildActions();
1 l1 Z. d8 K1 ]) V9 p' n) I; Q swarms.activateIn(null).run();
* v7 R5 E* ~4 s. s4 G }* U+ e+ X) b" Z7 F* |: S1 Q
0 X) w/ g" f2 f3 m
} |
|