|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # y, T1 U5 H2 k D
8 Q+ D' ~& M+ j4 J, _0 Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 n+ v! h1 N" q. O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- E+ r# H: d5 t
swarm.SignatureNotFoundException% R# e8 B$ ^6 e4 E2 N2 U0 d/ i: T
at swarm.Selector.<init>(Selector.java:76)
# Y# b" C, Q8 Y" h2 A/ u) ~# \ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 j$ N- T) J$ N, T! e( k- m; `& G' B
at ActionGroupDemo.main(ActionGroupDemo.java:67)5 Q$ M6 Q& g# D/ o9 ?
' B5 l4 r0 C# I# @. {4 i- _7 H5 S5 h8 `
import swarm.objectbase.SwarmImpl;
" v) X3 ]. d' g8 E8 m# M" n5 ]import swarm.objectbase.Swarm;
; Q1 o [2 s5 t3 ~* `) k) W6 Yimport swarm.activity.ScheduleImpl;
4 ^/ R5 Y2 M9 k g+ d5 C+ Limport swarm.activity.Activity;( u2 a! R$ a: f, t! q9 r( l
import swarm.activity.ActionGroupImpl;
9 E% x1 I7 \4 G, ]2 I' `import swarm.collections.ListImpl;6 M& S# \& O6 b) Z6 j4 L- F* w) y; d
import swarm.defobj.Zone;
. d# b4 O- P/ M" u: z" }8 c# }import swarm.Globals;
: l$ b* ?( C/ a% K6 fimport swarm.Selector;. a. d3 i6 ~" x
import swarm.activity.ActionGroup;
+ k. Q# W/ _1 h H8 h$ `5 q) [class Agent {
% ~; ~8 h5 b4 f5 |/ x2 F char id;3 R' N$ P$ L" s- h: y# x7 P
) ~# a; P1 n7 K
Agent(char id) {
1 ?* `3 L0 v1 A# E8 M% E this.id = id;
* \# |4 p8 u5 D) i) p/ G }; }1 I* Y' E$ V" u+ z
. ^+ C2 b+ f6 @- q+ ^! r public void agentStep() {
6 w: z: g) Y! D$ o& p! c System.out.println(id + ":" + Globals.env.getCurrentTime());% K, B/ J% S( L# M8 Y2 H
}
. O0 V8 ]- r- S+ x0 ]}
2 R$ Z5 D/ u5 n" I
% o. _* v6 `6 B( vpublic class ActionGroupDemo extends SwarmImpl {
: y8 I3 I. ]0 f" U ScheduleImpl schedule;
& {" B1 L7 G; \ V0 z* q ActionGroupImpl actionGroup;
. ?' J$ W1 R0 r6 w, L# w ListImpl list;
% {2 \9 f. S0 ` ]8 e( L3 m char Id = 'a';
1 L8 r, }6 }( m" y5 d
! {2 a3 q( g9 l6 B ActionGroupDemo(Zone aZone) {8 P1 p$ `' H' C1 V
super(aZone);& W1 ~) \. Z% U6 }7 r5 @7 R
list = new ListImpl(aZone);# i1 @ H5 K/ N! A& V5 }
swarmSetp();! w$ V' i' s5 [. W! U
actionGroup = new ActionGroupImpl(aZone);* B# P9 r1 q) d2 H
schedule = new ScheduleImpl(aZone);" K ^7 _" M4 t2 d9 ~, S; O% p+ w
try {) Y/ F$ w9 }- `
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 \# u" B/ ~6 G1 e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- i1 `% u; ?6 v: y. H# ?1 j6 d
* ]7 A0 e' J+ i! o- |$ L
actionGroup.createActionForEach$message(list, agentSel);
9 z* r0 |4 G- T actionGroup.createActionTo$message(this, swarmSel);
9 i: e5 h, c. |/ _0 h4 ` schedule.at$createAction(0, actionGroup);
, P& o/ I, o( m; h schedule.at$createAction(1, actionGroup);
' T( T+ d- t' n$ V8 E; I schedule.at$createAction(2, actionGroup);$ e, r& A' ]0 o9 V$ N
0 n* {" {. n% @2 e3 J: O
} catch (Exception e) {
7 N0 M' g$ f' N" P6 Y e.printStackTrace(System.err);9 U4 p1 d- F# r9 q: d# X
//System.out.println(e);
2 ?1 _! j" k4 X, } System.exit(1);
; I* h) p8 _9 y9 Q0 w }8 N% P: b8 r; D1 [2 G! @
% k/ E" T6 |" s) s. O1 K1 j8 \! T
( Z0 K* @1 e; X: ~, ]3 z$ R }
8 }. L; k% z* e+ g( F
A; {, X/ p! o5 U private void swarmSetp() {
0 G6 B9 C8 o3 L3 \0 V) |6 E3 x list.addLast(new Agent(Id));: T3 G6 U* D& W" K
Id++;
- L; {7 \) a. }0 [1 T; f, L3 E }3 n, ~$ Y: g S/ m p* @" m$ I [% Y1 e5 s3 V
' g: l4 S3 q9 i public Activity activateIn(Swarm context) {
% r2 O+ G4 \* C$ D6 \. P$ W super.activateIn(context);. t& F# N5 d7 m: l5 e
schedule.activateIn(this);
+ F1 y$ ~! C" e' h$ o return getActivity();
" a0 A8 P3 [, G( n; s, t+ F8 \ }* M* y% C7 {. i' V/ W
5 B5 u' y+ s- t* Y b
public static void main(String[] args) {
- v! {2 J- A2 S; z6 a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 r2 c2 e; X) G8 H6 a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 F, K$ ^4 E/ |
swarms.buildObjects();( B: b6 {4 O2 X: J2 g, i' o1 \
swarms.buildActions();
1 G6 F% b$ | E( v. J( v swarms.activateIn(null).run();7 h# ~3 ~% O+ @
}5 k& |5 C; v) j- `/ c; R
- a2 O& l! ]% {3 y} |
|