|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * e! t/ b+ W! B" Q. U
+ K# B% l7 m# \" p4 m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 _# F6 j' `) @' H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 @' E- i3 }. m9 uswarm.SignatureNotFoundException/ T7 C* F) G0 p8 q* T, S7 O
at swarm.Selector.<init>(Selector.java:76)3 G: \8 Q' h' O: C4 E& L% i( v4 i6 s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 j/ N1 f7 m' v0 ?2 u at ActionGroupDemo.main(ActionGroupDemo.java:67)7 _$ E8 A, B7 X3 v) C: g
- M! @7 v* y. G* X1 t4 L$ _5 Z
) ~! f, I. H% _( h1 w' Rimport swarm.objectbase.SwarmImpl;7 e/ n! |3 }7 y6 ^# l5 p/ ~5 H. D$ P
import swarm.objectbase.Swarm;9 C0 {4 h3 L i- T0 L5 Y, c, q
import swarm.activity.ScheduleImpl;3 I" O# x# p% i( l. M* J
import swarm.activity.Activity;; s; u; E- B' o( L
import swarm.activity.ActionGroupImpl;/ z: r9 c% i0 M4 i7 a
import swarm.collections.ListImpl;
# s+ I9 s5 ~( ?/ M6 M& G1 j8 H/ l6 D( }import swarm.defobj.Zone; ) c) o# h6 @; w
import swarm.Globals;
5 u& x8 @7 W$ Dimport swarm.Selector;
* J+ t$ C8 S; T, p6 o9 c( ~import swarm.activity.ActionGroup;
) p+ R$ L0 } v& M; b4 rclass Agent {2 M' H' `* Q0 E* t2 ^' ]# g
char id;
, ]( q a) `: t
$ ~3 b; ~: E5 }8 I" m Agent(char id) {/ g3 }% u) v! h
this.id = id;6 s6 M: v* B: [' b' u8 w9 L5 R, y
}
6 o/ }4 c; a- @% e/ J: V! Z$ y
3 Y# @" I# R$ I6 E: I public void agentStep() {& L' k+ H9 A" S" l+ j7 p
System.out.println(id + ":" + Globals.env.getCurrentTime());& c8 e5 }; e, {8 Y* m0 h: Q
}
+ U: S. k2 h. F" n}
1 m. B' u! a- Y7 [% @1 r2 s. N; _( t6 ~1 L# p
public class ActionGroupDemo extends SwarmImpl {; u' {( i8 l5 u4 H2 Q, t+ M
ScheduleImpl schedule;0 P/ z0 b8 G# y1 p
ActionGroupImpl actionGroup;" k1 W) `5 |" V) M$ i
ListImpl list;
9 c- y7 p; F" |1 r4 e& W char Id = 'a';
: i% L6 S. [# @$ {& W, S$ F. O9 [% i: n) K+ ], X) n) r) {5 ^3 [
ActionGroupDemo(Zone aZone) {
2 {+ q* y' `! ~, Q" Z9 J3 l super(aZone);
# Q, M9 F6 P7 @ list = new ListImpl(aZone);
, f+ T+ R2 s& @# V$ D9 _ swarmSetp();
" R: s4 w0 q# c actionGroup = new ActionGroupImpl(aZone);# r+ G! \) p, D4 F
schedule = new ScheduleImpl(aZone);
2 A- Z2 H; r' M+ K- G try {7 m' D! R: a+ w2 T5 @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
% \3 T! m4 W1 I1 k# ?; u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* U K/ T: W% `0 t- \; _
$ \ s t" ~3 q% z3 O& b actionGroup.createActionForEach$message(list, agentSel);3 e9 u+ c( W3 F" ]4 |
actionGroup.createActionTo$message(this, swarmSel);7 k# o8 \# w5 q- ~- {
schedule.at$createAction(0, actionGroup);
& r* c Z7 L+ b schedule.at$createAction(1, actionGroup);
v: N2 w) U8 L0 r schedule.at$createAction(2, actionGroup);
$ P' @& G' x$ O5 e0 w1 c1 K3 v% }' p+ ?8 O( \& p3 U4 `
} catch (Exception e) {
0 a; L$ r, @9 t: K6 { e.printStackTrace(System.err);/ g3 F: z0 M0 N6 z
//System.out.println(e);) y1 K2 r& G: I$ D/ a
System.exit(1);/ w$ \4 a% F' s& P! W+ r3 J9 R
}
; U1 u: K9 o2 r
' B* P; q& V, M4 V! C& Z# _8 c5 I5 |
}, E0 g$ T; r. J O6 S
/ j* v: V0 K, K$ G- Z! w+ i private void swarmSetp() {
* X: U0 q; f9 Y list.addLast(new Agent(Id));
- z. G1 E. \0 R: [* C+ J m& u2 a Id++;
* Y- G$ n! \* c4 \' q7 O2 N }
4 B4 z' z0 I# D# I1 W3 u# `9 T" R4 j0 u0 F9 j* H- V1 L( H. ^
public Activity activateIn(Swarm context) {
1 y: l$ v& ^ Y9 X, ]5 g) J+ } super.activateIn(context);+ ^( L+ v1 y" ~6 T# L( o* k7 o
schedule.activateIn(this);
' B6 t# `1 J8 f5 S3 v8 Y return getActivity();2 c" J# W( S6 \6 t5 a. \
}% V7 E" ^0 N' W6 [- ?$ `. |8 \
* Z% N5 k2 D7 u7 `/ J* {4 M/ ~
public static void main(String[] args) {# B- V: n9 X' y& C0 j( y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, ]$ K" b5 u9 P8 ^' }3 U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 V+ ~, p! d. [3 O( z+ n swarms.buildObjects();2 T4 t! s) ~! A) n& E
swarms.buildActions();* ]7 c: {: |6 d* X) B
swarms.activateIn(null).run(); M2 O% Q1 g4 t5 z( e
}
) v% O- Z/ Y {
0 V6 G6 a8 h" ~% p$ b2 c} |
|