|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
\( x) H5 s& R/ {6 E
: T' O2 b3 h$ b B g( R! p# e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( s$ w+ e5 N7 {- L" l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( R: u2 o) X. u3 Hswarm.SignatureNotFoundException
' p! Z9 l/ m5 S7 X( h8 d) n& W at swarm.Selector.<init>(Selector.java:76)- \7 O. C/ ~( a ] r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): b T3 [+ o: M6 E8 l! o
at ActionGroupDemo.main(ActionGroupDemo.java:67). q- u1 b3 m6 K( r$ l
6 x. X) }0 N+ g% d# a
' i1 g+ p7 N6 H3 y5 yimport swarm.objectbase.SwarmImpl;4 _6 j+ y4 [0 z" }7 A
import swarm.objectbase.Swarm;
- i7 x+ k I) A9 p4 B# U9 {import swarm.activity.ScheduleImpl;
% I! J, H( B, K/ u7 T4 z3 E @/ ?! Yimport swarm.activity.Activity;' m1 Y1 L/ L- M" \
import swarm.activity.ActionGroupImpl;
" x" x6 U; N, N. v8 r q1 ^9 J3 Qimport swarm.collections.ListImpl;
5 }3 `) U# |! v0 } b- Simport swarm.defobj.Zone; + b. U2 I: H, b. ]% K. x# }* u
import swarm.Globals;
: w( _& H1 `/ k% M! y) Aimport swarm.Selector;
D9 f& C# @0 N/ Gimport swarm.activity.ActionGroup; ) r! {8 H* e( g/ `
class Agent {% b5 P+ u. ~+ ]1 ? s
char id;
6 [$ Y0 b. x, K3 {) g2 M8 \5 _% H1 a1 B8 z X; T
Agent(char id) {
1 B; F5 [. ^( [6 `* @ this.id = id;) |6 D. ^! C3 c; i
}
, H7 |: S. d. s+ J/ P
8 ?% K: c O2 e/ q( O! M; n3 L6 ? public void agentStep() {) \6 O- Z X) i: I$ K0 U
System.out.println(id + ":" + Globals.env.getCurrentTime());6 J, k! b+ Z" F4 _7 S* Q
}
! {& q6 j' x9 U8 G3 w5 P" R2 q}' ]1 y8 g' d5 u7 t* U8 n4 b
, O2 Q2 Z5 T, |- `* i
public class ActionGroupDemo extends SwarmImpl {+ G- K( ?, V& O& V
ScheduleImpl schedule;4 @$ K: r: Y% ^9 O8 l/ a- R. J
ActionGroupImpl actionGroup;
0 H( M4 m2 r- _, h ListImpl list;
. s* Y: V: D! {9 L$ Q char Id = 'a';
4 @' ~$ K+ b9 s6 g" a f1 c) e u+ F: N5 J
ActionGroupDemo(Zone aZone) {) o/ v/ {( c! Q- x$ F6 p. z
super(aZone);. \2 T+ ?% i9 U% G8 _/ _1 Q
list = new ListImpl(aZone);" b/ s6 r5 O% H& m
swarmSetp();# J, x% N, {+ G" b7 w, F) }, E
actionGroup = new ActionGroupImpl(aZone);8 ?) @& V( l9 \6 s7 B
schedule = new ScheduleImpl(aZone);
# r1 N2 {" o3 h# v/ G. p try {0 z L r4 l; [2 h! @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ J+ |# P4 @5 b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 u) E' h# x5 S+ N
& j2 X$ a% L5 l( X( T/ T6 B# M. \- i actionGroup.createActionForEach$message(list, agentSel);
: k5 o) p4 n: o9 r actionGroup.createActionTo$message(this, swarmSel);
$ e5 F. H- @2 h schedule.at$createAction(0, actionGroup);
( z$ R6 l6 U+ P) K schedule.at$createAction(1, actionGroup);+ r: C5 v6 e/ a1 N
schedule.at$createAction(2, actionGroup);
1 @5 w4 o9 v' R% k( r
+ ?8 g5 F. n6 \ Z, {4 I0 V! f$ P } catch (Exception e) {9 t% j& G7 ?! y* w6 r
e.printStackTrace(System.err);# `: G+ U! ~- y2 _& d
//System.out.println(e);2 F. L/ k" ?+ n& P9 Y' s7 B# E
System.exit(1);
+ j, ?9 F4 X9 n' ]( { }0 g. w- e: m3 m/ T. }
# d& c+ S2 f, B Q
1 u' D; C5 j7 X# Q% O! y0 b
}; } G/ u5 X$ v8 y- M9 A
/ O0 _% [( B: ^+ @& b8 l
private void swarmSetp() {8 p t" N. x& r: U7 ]1 Y$ g7 \/ V0 b
list.addLast(new Agent(Id));
" x: Q, ]. V4 x* B Id++;3 R& U" w) l! O4 E% y% S0 Z
}
- a5 b. a8 _4 k6 p8 G$ S1 T9 b3 E2 y% [2 Y! o+ J
public Activity activateIn(Swarm context) {. e" F2 p3 A/ r7 t; V$ p3 l
super.activateIn(context);! f# e8 t. L* a. S
schedule.activateIn(this);
6 a( W! D: _; e- u return getActivity();
+ f! V2 Y* B9 E }
$ j C+ w2 f' N* {
% e$ m' [! n( z( [/ o5 x: u* N public static void main(String[] args) {* ~* B7 @: B% z$ g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 r7 E' d* Z6 k3 D) z( e
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ }4 o N' x2 ]( ^. o: V; m$ \ swarms.buildObjects();
: X2 Z @/ A4 @ swarms.buildActions();
% N) p9 Z9 o+ g8 x2 V* X- w4 ?' }8 | swarms.activateIn(null).run();
& a+ O: [" J8 N7 S& M0 Z3 B }
$ P2 U, T) ?: X
4 j# V [0 u* P, _7 I' y} |
|