|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ r$ `5 y: q. y; ^2 ~1 G3 }1 u- W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# N {# h& Z- [ T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ [- p% ?1 c/ Y% O6 u! T
swarm.SignatureNotFoundException" i2 j8 [1 I; v1 o% J; n9 o% ~' ?# [
at swarm.Selector.<init>(Selector.java:76)
) T3 h2 e W( ^; s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% t0 _3 c: D" G at ActionGroupDemo.main(ActionGroupDemo.java:67)/ B1 ~5 l( a) U1 Z! }
! b( l: w( P, a- h$ N; A( o. T0 ?5 }4 J. S. G! X
import swarm.objectbase.SwarmImpl;, [4 O0 `0 O/ u
import swarm.objectbase.Swarm;6 X" c3 L: ~! n2 W+ h* M- v9 w+ L
import swarm.activity.ScheduleImpl;/ D+ ~& \* k( j
import swarm.activity.Activity;
7 q+ j" ?. k k1 ~+ ]7 Mimport swarm.activity.ActionGroupImpl;9 v; `/ Z6 }2 p& w4 j0 D
import swarm.collections.ListImpl;* [, _5 V% _& e0 z7 E! N0 J% f
import swarm.defobj.Zone; * }/ t/ f% K0 d4 v! E9 i, ?: V
import swarm.Globals; K, |- o: e/ f8 P! z$ V- \+ ?
import swarm.Selector;2 H' I0 u' Q/ m% G. s
import swarm.activity.ActionGroup; $ i9 \: ~( q2 _/ T' K
class Agent {
z) w8 ?9 M& N9 { char id;
- E) Y C7 y9 \; F6 F; r$ D# b( |* W3 u0 C: M! `
Agent(char id) {
% Q1 W' a: x' y+ h; Q this.id = id;
. D% ]0 X9 d$ _ }. l7 f# q0 a2 d. u
. Z- f: P9 g6 |' j& p
public void agentStep() {7 h! K- A# M# m, }1 P. @3 u5 h; m& B
System.out.println(id + ":" + Globals.env.getCurrentTime());! C* Y3 g+ _1 T1 T b0 S7 _
}( h' Q5 d$ b* }4 Z' u
}
% F0 s/ V8 U" j
+ s0 ?+ q, {2 E: p, j9 Lpublic class ActionGroupDemo extends SwarmImpl {
& F ?6 A% P2 v( P( N+ f ScheduleImpl schedule;
, G6 ^! f" p2 q0 |% n t* V ActionGroupImpl actionGroup;
. T/ N& y5 I2 ?; q: Y" O ListImpl list;
6 N. e$ j! N8 L' Z7 p0 w' q( Y char Id = 'a';
( o5 \2 }% _6 d( t: r
! e* o' Z! ~7 z1 y ActionGroupDemo(Zone aZone) {. G$ u; X, T v0 [
super(aZone);
5 M% q2 w5 s6 t1 t5 A list = new ListImpl(aZone);( H; m( T8 {/ @% E( @
swarmSetp();
" v. T; L) u! i3 n$ W+ c actionGroup = new ActionGroupImpl(aZone);" @% q9 I* K! G5 t
schedule = new ScheduleImpl(aZone);5 I- W, a7 j3 K
try {! L" E. r; z- q! P2 Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( ~3 C( _; L* W/ @: d Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* Z/ P/ h, `" [" M; r
0 N2 _; Z5 @0 j; t- h8 k actionGroup.createActionForEach$message(list, agentSel);; n9 D6 {( W( \6 T! }" p
actionGroup.createActionTo$message(this, swarmSel);
4 V3 N' T1 p8 Q, h- e$ z; `4 U3 \ schedule.at$createAction(0, actionGroup);" Z b% |: n @4 [2 \6 U
schedule.at$createAction(1, actionGroup);3 ]2 B8 d0 W8 C& N3 f
schedule.at$createAction(2, actionGroup);+ {+ A% Y4 F6 y; Z
0 d! w4 u- s- ^) G q
} catch (Exception e) {; `# E2 X( M( |7 T
e.printStackTrace(System.err);
@" M: F' Y- {, Y/ g+ q //System.out.println(e);$ S* l# s+ y) T; r1 C9 G
System.exit(1);; u6 k# n/ U+ y3 h
}9 n8 C: }: I& h6 {
- T" W$ ?1 d+ b! U5 H" p
+ I L3 A" c( v$ i- k }
9 }% }* a( p. z0 ~2 E I' V- J$ S
, O2 L2 }9 g0 p+ I private void swarmSetp() {
3 I9 }; ~' `8 z }" j9 q list.addLast(new Agent(Id));
" q) R/ _% \( O. n" N& ]7 `* i Id++;% h; |7 x7 s" V* o
}( x. M5 E2 R% d& [5 D
$ l* N0 M6 r7 Z/ j/ J
public Activity activateIn(Swarm context) {: k8 i3 a: W4 l# }
super.activateIn(context);
9 S0 F8 ~6 ]. h `2 e schedule.activateIn(this);
9 M: E2 ^7 f5 r* ]7 Z9 \ return getActivity();# ~5 _1 D- Z2 Q! I
}
- K- T3 ~0 [7 x& t7 m4 _/ v- G2 d
# l9 }! m& u/ ? public static void main(String[] args) {
' k# O) k/ n; K1 `( Z5 p+ u3 Y9 | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, t1 P$ S5 K* B& H$ e: n Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 V, y9 t4 _; N) u
swarms.buildObjects();1 l# `& [( r" J) d( C; u; q
swarms.buildActions();# m r h$ w; V3 l, u9 }% D
swarms.activateIn(null).run();, P4 Z, c! {- V* k: I, S
}
* T# S! `; Q' _% i3 _! l+ W/ {) e( [4 W7 o/ X% C, P; C
} |
|