|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& Z$ c) i6 V" p+ d& X1 s+ g9 ]1 }) B G* V) y! P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 o1 d: q7 w7 f- e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) E2 Q: v7 {0 y5 I9 f
swarm.SignatureNotFoundException
) z+ f3 V$ ?- K. i" ^! j at swarm.Selector.<init>(Selector.java:76)) N: k5 Y( c4 E, o D; ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) h2 \$ P) \& ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( h4 R0 A1 _* U
2 f) g3 M& Z x) D# X, `( ~8 g" e9 Z' s! d: T) {* Y4 M
import swarm.objectbase.SwarmImpl;! Q* k" O. T) i/ b0 `( v
import swarm.objectbase.Swarm;6 _4 d# F- | H! f
import swarm.activity.ScheduleImpl;4 P3 K' e% N9 U5 [% B; N
import swarm.activity.Activity;: Y z1 h1 Z+ j1 t
import swarm.activity.ActionGroupImpl;
. _8 l9 y1 ?/ F. ~' p1 Y! ~# Timport swarm.collections.ListImpl;2 h* k1 C w( b- _' t" X
import swarm.defobj.Zone;
& H2 v! n2 e1 k4 y& limport swarm.Globals;
& p# e3 k( I" ?1 |% R1 W6 Dimport swarm.Selector;
+ f; |; l0 j D( T6 a& p fimport swarm.activity.ActionGroup; 9 k2 b6 v0 C: U( T
class Agent {
: K1 B2 ?1 C6 F3 U! p& _" { char id;1 f% W/ y( K4 v
# Q* y% _3 v- p- j3 L/ |
Agent(char id) {
s7 |: H; ^/ d" f9 m- X this.id = id;3 N% i3 x Z+ U, ?! c# k
}' t- U5 s0 b+ M# {9 P
. O. _/ U& s4 b7 @2 V
public void agentStep() {
: M! B# U( g; L4 }6 \+ _' m System.out.println(id + ":" + Globals.env.getCurrentTime());) X3 u; E9 k& E ~ s
}9 o5 T& F% j0 P5 U, @& q
}
5 d0 e/ i. b1 ~9 V
( m% p- ]2 S+ hpublic class ActionGroupDemo extends SwarmImpl {
+ K$ O* k* @$ B* @' d# R/ z' {5 M) T! | ScheduleImpl schedule;1 {, f! ~, V% J3 ]- T! K
ActionGroupImpl actionGroup;
! }8 d3 A. g8 p9 l1 I1 i ListImpl list;+ B- M% J4 c% i$ j/ d. c- J
char Id = 'a';
/ u3 Z& {8 I+ y& ^5 j) D+ n+ K9 V7 g- G0 o
ActionGroupDemo(Zone aZone) {
; V+ ^) ]( P, N super(aZone);& }+ B. b; M6 j4 d; y# h& n! a
list = new ListImpl(aZone);0 P% ~( O3 y; d: ~6 d9 F
swarmSetp();7 N8 s' ~+ W2 c+ _$ s: p
actionGroup = new ActionGroupImpl(aZone);8 i1 W- h) U- ^' f6 i- |
schedule = new ScheduleImpl(aZone);
& I. @( y' b: v% b% F% d N4 U. T try {$ y9 }+ x" L \
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 S* g8 B1 \2 F& l) i7 ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, V0 v8 K1 A$ K4 ~
6 A7 P: m" P H; k) [1 b" A actionGroup.createActionForEach$message(list, agentSel);
8 ?& @. d; e5 f! F* c% o$ A7 v actionGroup.createActionTo$message(this, swarmSel);9 g$ A* c1 P1 c# F: F* t
schedule.at$createAction(0, actionGroup);
9 j$ o+ H4 a4 K7 q( } schedule.at$createAction(1, actionGroup);. n8 }8 s& z* `8 G1 b' C5 i/ h
schedule.at$createAction(2, actionGroup);
# i/ y7 c7 S" p6 [1 h7 f4 e
" T& _. h4 }7 G4 T3 X0 A5 S } catch (Exception e) {! n; v- m4 m+ A& e
e.printStackTrace(System.err);
! ^0 W" Y" V0 Z8 r0 J% V' z //System.out.println(e);
?* c$ j1 W, U! U, v& h7 B System.exit(1);1 o% @0 J. o! y
}8 J; ]6 R! `' D" A8 K* f
7 f) e- }, B2 a, N" t, w
7 s: r& ]0 ~% e/ i/ n }' ]2 N& }6 |- W" x
$ E; k/ ?" {; I. ~2 D private void swarmSetp() {4 m; G( C+ l7 I, D) A a, N
list.addLast(new Agent(Id));
4 K$ h! Q [7 f Id++;/ E* d0 y) h' x
}
$ L6 }) {( i/ i5 N" d: ~- m0 J$ q! G5 q! G6 {* l6 T# [' ]
public Activity activateIn(Swarm context) {
, X& f0 k; {) O+ T super.activateIn(context);
, Y; @( \0 W8 f schedule.activateIn(this);0 g( r( ]. T% o A# @6 V
return getActivity();9 \4 X6 k3 O# o) k" ~
}6 o) Z7 C/ N& b2 W5 Z+ ?
7 t* x7 G0 y+ H* N, A* p
public static void main(String[] args) {
# i0 o( l2 J' _4 u( ]5 }7 H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 U2 m3 z9 s0 X, M7 Z8 }( j: U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); S g: D/ f" p/ r" H4 b' D
swarms.buildObjects();5 |- n# K8 P: x
swarms.buildActions();
, U% l9 v+ S/ a$ H. C swarms.activateIn(null).run();
. v- D$ W/ b! D) { }) v/ f- {$ O0 t- L- z6 J
9 A6 Q( j N4 U9 b# Z} |
|