|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ~' W/ R8 j2 q' L9 }
/ w1 w& Z9 v# n; k0 l5 ]* `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 a! K9 ]3 r4 a; Y% x6 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( m* Q# h$ b2 y0 c- R0 F5 w7 d* D
swarm.SignatureNotFoundException
) Y- R- f! p1 S7 H2 D7 n- d; C at swarm.Selector.<init>(Selector.java:76)4 j# E5 T0 B) d, f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( h2 I- D/ e, k: ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)/ j! P9 J7 G, N; G2 l
0 k5 s: i# t- W
4 @; y% x& P7 A1 j3 q) rimport swarm.objectbase.SwarmImpl;5 v& J, M4 \" c5 Y
import swarm.objectbase.Swarm;- [/ Q8 l( M; D
import swarm.activity.ScheduleImpl;
2 r; z& w3 U1 y3 R. d4 e% ?% T/ `import swarm.activity.Activity;
5 Y0 B7 V( A0 c7 n6 U Bimport swarm.activity.ActionGroupImpl;
0 b* u# K) x3 y- G2 F1 Z; |- Fimport swarm.collections.ListImpl;8 s* T, _ H' [5 B
import swarm.defobj.Zone; ' A) f! ^3 Q& W
import swarm.Globals;
! n5 o" ?( S$ q$ q& Z7 W0 ximport swarm.Selector;
j5 d( d3 }4 [' j- w( c4 l' ~8 Bimport swarm.activity.ActionGroup; ! r7 L" v3 x6 r F
class Agent {6 ?1 Q* J4 L- e' ^! L. }3 t
char id;
/ s& x7 l& W9 C8 c
& _2 f- _7 D( W' `) M6 o8 J Agent(char id) {
: w- m/ r8 S' y5 O) @ this.id = id;/ F8 \7 G) }, T% o/ b/ v s. l4 M! b
}% {4 Q$ c: G1 _) O/ ?- H5 |
' m# `7 ?( m( J- @- l
public void agentStep() {
1 N: m8 a g; Y. ]5 E System.out.println(id + ":" + Globals.env.getCurrentTime());
$ v, S) I6 N8 c, t }6 O0 D- Y8 E, H9 C0 t S4 v
}3 p0 U) Z% ~5 n- G! s% ]. t. T9 n
3 _* a, c" j3 s3 }public class ActionGroupDemo extends SwarmImpl {4 S6 J9 p2 f: w! S7 Z/ [
ScheduleImpl schedule;% r7 p' ]+ }$ W' T
ActionGroupImpl actionGroup;, A# p$ g. f4 `2 {5 }- D
ListImpl list;* X" r' I( @- h: n$ E l" G
char Id = 'a';
% C, B, ]' u X; w
! R* @" D5 C. t2 d- W# Z# O: c; G ActionGroupDemo(Zone aZone) {
9 z. @2 b4 q8 w super(aZone);
- \# V2 y! Q4 t# } list = new ListImpl(aZone);$ A1 a F& P9 t8 p3 p
swarmSetp();0 X' D! ^& ?+ ?. d: A" S
actionGroup = new ActionGroupImpl(aZone);$ n( T% v P( [9 K9 ]0 B1 @3 ^, x
schedule = new ScheduleImpl(aZone);
% V4 q% x7 R; g" E8 T try {+ p, g1 h4 X- N3 f! B& E
Selector agentSel = new Selector(Agent.class, "agentStep", false);* V" S* c! J7 h7 J0 G0 c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 U1 O* L+ M- ~( z2 u6 E
, Q" S6 G4 i0 _; F# d actionGroup.createActionForEach$message(list, agentSel); Q- m! `' |! t+ u, ^) T9 B
actionGroup.createActionTo$message(this, swarmSel);
( @# A0 E/ w( S schedule.at$createAction(0, actionGroup);
# Q% w1 g1 ]- I" M, r schedule.at$createAction(1, actionGroup);; }& s. s: F$ G4 j
schedule.at$createAction(2, actionGroup);
/ n, X% l: c. V% I; Q1 u. Q- [6 |% }7 f) c; D- y& R& @
} catch (Exception e) {& Y! S$ i" E7 d$ o) G
e.printStackTrace(System.err);3 g0 x- ?; k) Q) W2 [
//System.out.println(e);
( o" J5 e3 a s1 d$ o System.exit(1);3 Z9 f; v( c+ I5 j1 N3 J% f% @/ P
}. Z6 L H3 \3 s$ z. J$ Y9 ?: c
1 _2 n3 c5 H% j9 w* M
! ~$ ]4 ]2 d1 [4 H9 L, }
}
- `5 G. f4 D6 X. f: v. p
2 u/ o# `6 n" L6 \5 B" ^2 @ private void swarmSetp() {
8 w" c' E3 Z7 f3 m list.addLast(new Agent(Id));
) w/ t# `; O8 G& l. w3 u- s& B. M Id++;
N& O( H$ E0 F& J. i' w }
; |9 G8 N7 m( l) F4 p
% d$ U& U- g9 }- p2 q1 W1 Z- g public Activity activateIn(Swarm context) {
2 y& y5 q4 o, e. f2 T |+ ~ super.activateIn(context);
$ V& X4 U( h- {. ?' Y. k6 d schedule.activateIn(this);6 s1 i% U8 }& e/ _: `3 z
return getActivity();! L7 J' [! Z* x, w1 G# ^
}7 @9 r" y" V2 \1 n# m0 b) x
: n" u; x H$ a- H$ G public static void main(String[] args) {; U6 L' z. Q. S+ k0 u' |; A" u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ~7 _5 ?! |* b# t Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) Y8 o0 f% i* A
swarms.buildObjects();
& t! R* z$ n* F2 p! i/ w. H swarms.buildActions();
* a. ]9 k# I+ F( D0 h9 k swarms.activateIn(null).run();2 U d2 I. }! F# k7 q/ C
}
2 C$ G% K3 L% @- X1 o: x; n" y( O2 b* v
} |
|