|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - {* z/ t6 T$ R. k6 X
3 i* X. f& U3 D1 p# Q- Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 l9 f' m9 L! j4 }9 N8 j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. J6 K% f0 [2 N% S
swarm.SignatureNotFoundException2 x" S% Q) o/ O# I
at swarm.Selector.<init>(Selector.java:76). j% \! j* \& C) P( s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 ~. I9 d7 D! [; B8 ]
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 L3 Y& o* D) b" i9 Y6 H
u7 {. {! O& R; y1 @
& U) C, n, [6 r6 h" z2 cimport swarm.objectbase.SwarmImpl;- I+ Y4 P& P$ B/ |7 V+ D" V
import swarm.objectbase.Swarm;
2 H0 g* P R6 q3 L+ |import swarm.activity.ScheduleImpl;, {! F/ K0 v5 V- E* z& {
import swarm.activity.Activity;
6 k! x* M% k1 ^, U. mimport swarm.activity.ActionGroupImpl; w2 s- w. N. o- @4 q5 M
import swarm.collections.ListImpl;- Z6 c5 I& s7 K2 R9 y4 K$ a
import swarm.defobj.Zone; % b; v+ A9 d- Q" [* K
import swarm.Globals;$ U0 W6 k* l. V% k: v9 b
import swarm.Selector;( w( q3 t. r+ Q. D; ?3 ^
import swarm.activity.ActionGroup;
$ s# d- i0 o9 qclass Agent {
. x' \. m" N b' G' b char id;, F" J6 d7 }$ s1 R! l
9 r% X' [: S6 A! K$ k( P7 ]* u! x Agent(char id) {
0 m, U- I: s( |. T; r3 C$ g1 ]. t this.id = id;
& W; Z0 U& s! e3 _ }
# t; g' N% j2 m; Q' u: o7 g9 Q; E) F: d" G- P
public void agentStep() {' \7 T1 E: I: M/ S
System.out.println(id + ":" + Globals.env.getCurrentTime());
( M& l: L' N" t8 m4 x' i }; z0 | ^1 H) e- q$ K
}/ e" t/ f! g2 m
6 j+ \, t" J3 @
public class ActionGroupDemo extends SwarmImpl {
. @% S4 C& z) Q4 A$ x2 r9 k- _ ScheduleImpl schedule;
1 o% E0 e( b7 [ ActionGroupImpl actionGroup;( f7 y) N% G& v9 L8 x/ p o
ListImpl list;9 f! y/ x0 D5 g8 \, h3 x0 I$ y
char Id = 'a';
; [( _7 `1 v* L+ s/ v: e- u- n/ \1 m" I) E. W& p
ActionGroupDemo(Zone aZone) {
5 d1 ~! K& e6 _6 ?" X* f' | super(aZone);
" z& ]2 Q- K; F$ r5 y8 a list = new ListImpl(aZone);
# u) O$ ?6 V& Z* I2 A6 c1 B6 _ swarmSetp();
" n/ P6 ~9 |) E" |5 O$ @7 [ actionGroup = new ActionGroupImpl(aZone);
7 l1 S$ ]2 ^5 O, n/ s schedule = new ScheduleImpl(aZone);$ O% U+ ]! Y' D, `* n3 o* S
try {' F7 k$ u: \2 a7 T9 S* v) U
Selector agentSel = new Selector(Agent.class, "agentStep", false);) d# M8 O' d3 G( e$ I1 H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; u+ o6 a' b! U+ w- g2 h- g! d: E
8 P% p0 u3 n$ b
actionGroup.createActionForEach$message(list, agentSel);
# @2 L4 Z" w# D. a5 p, S; x actionGroup.createActionTo$message(this, swarmSel);; U7 |5 ]% V( i4 v$ v7 c6 [+ @+ ^
schedule.at$createAction(0, actionGroup);; o c% k& T% p6 b
schedule.at$createAction(1, actionGroup);4 m- T8 ~( G e3 w0 M
schedule.at$createAction(2, actionGroup);
" \3 P1 Z p( u9 J- Q7 \, Z$ x8 e1 l7 M# L
} catch (Exception e) {% d( o/ ?/ V! a6 u" G3 m) ] }/ e
e.printStackTrace(System.err);6 y3 _7 ]# [1 q$ v t
//System.out.println(e);
4 p' C& z# x2 ^$ [ System.exit(1);
7 O S4 m8 ~9 G4 b }
8 G$ I" F" N# U' h' ?/ O+ I) L6 y, m; S+ T& y
* |+ c* P9 N+ E! R" I5 z }
7 e J8 N: q' [
& g; ?! N( t! h' ]/ D private void swarmSetp() {
' F7 E# c% m, H8 A5 L4 R list.addLast(new Agent(Id));
" u7 U1 O) A/ O( C Id++;
; P/ }6 Y6 y* c1 k, h7 R* x }, {8 _: f2 U/ e+ l
; R4 i) ~3 v% N5 a/ K
public Activity activateIn(Swarm context) {, p' g9 V" f- q! z
super.activateIn(context);7 j9 I, k. S: n- W
schedule.activateIn(this);
* I6 ~" f$ l! z% ^! ?) E* e return getActivity();5 v1 k( D- P6 H) C$ y; |
}
) K, x9 w+ ] I
) n$ d d! ?* e9 l public static void main(String[] args) {, p& `# E7 {; Y7 P5 ~1 p. c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ ?& h M. J3 f, D% Q! p! d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ f9 _) ~" v) V6 r( n swarms.buildObjects();& m: |3 h6 M* I C- s, S# Y
swarms.buildActions();
0 H) b3 L4 |( @) ]/ m swarms.activateIn(null).run();" C* }3 B* y, N
}& z- S9 m' N; z' f1 X
: ]. z6 I Q4 G* G* r: `6 T
} |
|