|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 w+ k8 t4 |9 p, w0 {2 q7 \1 z' O0 C: W! U. K& o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; }$ m- P. f, x2 w, l* l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." P' R% z& f6 G! r
swarm.SignatureNotFoundException
' E Y4 a. ?9 ?1 b7 \ [ at swarm.Selector.<init>(Selector.java:76)6 q* z$ R! K0 z8 J' Q. @& E2 I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 D, e3 l4 ?8 d1 J+ B) q$ y at ActionGroupDemo.main(ActionGroupDemo.java:67)2 x- o" p( f; b. f. F+ u" d$ n
' g% n; A& L4 S, p: A/ l$ f
5 L! A/ F9 f/ X& J! ~# Y4 himport swarm.objectbase.SwarmImpl;! N: T9 ~+ R. @) D6 _
import swarm.objectbase.Swarm;
) g4 O1 o+ P+ @import swarm.activity.ScheduleImpl;1 E' l" a6 x2 t* Y" J* D* s6 Z9 h, ?
import swarm.activity.Activity;7 E# l Y9 N6 P& |/ S
import swarm.activity.ActionGroupImpl;
0 i# b" O, r7 q& p, uimport swarm.collections.ListImpl;- z4 m- @+ M( V7 n$ S
import swarm.defobj.Zone; : t, T- P0 ?# e9 U
import swarm.Globals;+ H4 F8 w* e' q; _
import swarm.Selector;+ y4 R: \ w/ T+ J! F
import swarm.activity.ActionGroup; , h/ x: j8 w& u: e9 N8 p
class Agent {
5 r2 z$ x6 k6 z9 S8 K char id;/ k) H% I3 A! V. z/ T
" W2 {" j$ \6 H/ I1 M: K2 A9 C! i Agent(char id) {8 a/ D1 s( ?$ ^9 \& w% Q) g6 a$ G9 R
this.id = id;, E1 y5 ^ C+ [+ g5 Y) J
}
' K% x5 G: |8 c* r4 }9 [
- E- K4 j5 f0 \+ ?. @0 N- T public void agentStep() {
$ ?0 _4 ?6 S8 Q: C, D6 a# s System.out.println(id + ":" + Globals.env.getCurrentTime());
/ B$ ]6 A; @) p6 N" k0 N9 v6 d/ ~3 V( ] }; j* X& H! L0 \0 S9 Z! j
}8 [0 {. }% R8 x- b. a
' x( u; o6 _6 N% b/ n
public class ActionGroupDemo extends SwarmImpl {. b/ y- ^( o# a4 Q! p- X$ W; d
ScheduleImpl schedule;/ M2 D! Q! b" P p! g
ActionGroupImpl actionGroup;. y) P5 l. V$ E- ]( v" p5 _& g- K/ Q* Z
ListImpl list;
% H. y+ ~8 \6 n char Id = 'a';
7 i5 b$ x' m Q. y! h) ]
3 f E* M0 S' [ ActionGroupDemo(Zone aZone) {
% P: B i/ w; j- E( i' a6 }) q- C super(aZone);( Y9 h/ u; @- i4 @; X
list = new ListImpl(aZone);
- U- h3 f1 Z9 _ swarmSetp();
$ ]/ i4 u) y. s3 I/ n- B H+ R actionGroup = new ActionGroupImpl(aZone);; b# F3 I+ o6 A Z6 `- [$ R9 G9 j# u
schedule = new ScheduleImpl(aZone);" Z7 V: B( @$ M7 v* Z0 V* ]. ~
try {
7 w1 |, q- }" _ s5 u k Selector agentSel = new Selector(Agent.class, "agentStep", false);* S# |3 o* t! H; \ R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 ~2 i( ~- N& L4 @+ a' q/ X# T5 L. t
. A2 O* m: t% i6 P% [' `7 ~ actionGroup.createActionForEach$message(list, agentSel);* _5 ~; Q* q$ ?/ {0 b: g
actionGroup.createActionTo$message(this, swarmSel);, _4 `5 g& `/ i3 r
schedule.at$createAction(0, actionGroup);
6 I8 B7 x u& H schedule.at$createAction(1, actionGroup);: V' t1 d2 d) x0 Z- @
schedule.at$createAction(2, actionGroup);
' ]" L: m6 C! j" O$ j6 D5 G3 ~. o) g! L% y# T* F
} catch (Exception e) {
@; E3 P0 v' N$ [; x% `; R e.printStackTrace(System.err);
) m$ S) f4 |- W n# ~) d //System.out.println(e);$ y P0 g: q# a3 |# W& X
System.exit(1);4 D. P8 w* L% Q, [
}
6 A; b0 u$ _3 Y1 J
2 @& f/ O3 G9 [6 l
, q2 v) x( \$ z6 K6 a }) V1 G* f3 o, n+ ?
& L3 |9 K; E q& ]) M( R
private void swarmSetp() {
# H8 h6 ?) W3 r list.addLast(new Agent(Id));2 w0 L0 C4 x$ S( k+ {" ^
Id++;/ J: b+ Q [' w. b$ Z* Y
}
T# N! X9 l/ m2 N x" u+ H
5 |2 ]5 H% l$ _8 D$ L2 j7 K public Activity activateIn(Swarm context) {
. Y& W+ X+ p- m8 L2 D: e# {/ ` super.activateIn(context);6 Q) ?* q% d! q& H7 ^2 Y
schedule.activateIn(this);) S( Q' ]: ]* k- W7 I$ A/ l- m
return getActivity();
, |$ ~) c I. s7 a x/ U4 Y3 c) z9 h }
7 N% L2 F. D: C% D8 o9 \+ `5 a1 C
public static void main(String[] args) {4 D# c3 `1 C% Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. d7 x# S( m8 G; a4 d
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 m' E! P3 T0 i& r- ^7 k7 E* R
swarms.buildObjects();; Y7 |" x8 H q: {& Z/ y8 `5 k7 D O
swarms.buildActions();
( {# l+ Y0 C* E, n1 K8 X. t# j2 J swarms.activateIn(null).run();
- f( e1 y8 Z& X }" r7 B, X5 g' \) E7 A# ?3 Y
* o% G6 }! o8 V# z$ c' b} |
|