|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 Q1 @6 u: R) U
( y7 ]& K( t9 [: Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: \3 U( k" s& Z; n v* F P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 F' F- \% g- r' a% F4 y) fswarm.SignatureNotFoundException+ R* M* {4 E2 p, U3 e! d* E
at swarm.Selector.<init>(Selector.java:76)" x" F! [5 u; l' n0 I6 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ P* ? o1 g8 \$ M4 w6 I' @) c at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 b$ A3 t) ~$ B; n5 _& |# |1 H( E
0 j; m! P; l& G' {4 r2 M
import swarm.objectbase.SwarmImpl;
. h" O0 y4 d" B! `! q) C; V1 P6 Rimport swarm.objectbase.Swarm;
+ n2 I/ F3 o1 a9 O0 Cimport swarm.activity.ScheduleImpl;3 C! [7 ~7 k/ F. a% `9 ~
import swarm.activity.Activity;9 g f3 B9 B Q: y; f
import swarm.activity.ActionGroupImpl;% B, b8 m7 q4 L$ [
import swarm.collections.ListImpl;8 N0 X+ W+ l/ g0 r" U7 [8 m0 S
import swarm.defobj.Zone;
% n0 k% d' ]4 n2 Y5 \0 rimport swarm.Globals;
! r) ~7 N3 }: v( o8 ~5 A7 simport swarm.Selector;
. T4 f/ n3 a4 z/ O8 Y4 h9 n9 eimport swarm.activity.ActionGroup;
# p ^9 {0 _' }' U0 n) [1 [& hclass Agent {/ W# T* l+ `" u' D6 j
char id;4 o* H, D9 e. B- C/ j B
$ ~% O/ H# Q8 B5 p Agent(char id) {
$ y8 w0 t/ G3 q this.id = id;5 u/ u {/ ~& w" N8 e
}1 c' U7 _* @- d& _, i/ t) Y
, Y4 n3 i1 m% p& C9 r5 w public void agentStep() {; k7 I& C% l- ]& F; L8 e
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 U4 s! l+ d B, V3 U" r4 D }
! V4 E( e3 g, T}8 P a# |7 x9 Y6 t
' z9 o1 r7 m0 k( Apublic class ActionGroupDemo extends SwarmImpl {
; Y% a* G, Q- K5 b ScheduleImpl schedule;
1 L2 V# G: J! G ActionGroupImpl actionGroup;3 r0 e- h# W/ b- g, h
ListImpl list;6 E& B. Y; a9 Z( R$ A
char Id = 'a';
# B% B. h( j$ V- A- n0 m+ h4 E5 D) l' m* X
ActionGroupDemo(Zone aZone) {) X( F# N9 w v( X: q8 K2 ^/ {
super(aZone);1 {' b0 @& V, b2 ~7 K+ s
list = new ListImpl(aZone);+ G6 b4 M. e, t" b2 ^7 ~- i/ W
swarmSetp();- L7 ?7 x. s( E4 R* @
actionGroup = new ActionGroupImpl(aZone);
, q1 J( A" I" G9 k schedule = new ScheduleImpl(aZone); ]( ?6 m0 [2 [* H0 N6 u
try {- I, @; I" [. m: T
Selector agentSel = new Selector(Agent.class, "agentStep", false);) `& j1 o7 h4 R& [& m& E* c4 W0 C' _3 u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 E: Y" X5 P( S2 ?) W, r- ?
. D' f' E6 a* D Q% Z4 J
actionGroup.createActionForEach$message(list, agentSel);
* _7 q; N+ V8 [" H# x actionGroup.createActionTo$message(this, swarmSel);- k! |& X( g3 h% r4 I
schedule.at$createAction(0, actionGroup);2 h+ U4 w. b# w
schedule.at$createAction(1, actionGroup);
6 i3 K2 |0 e4 p" A+ k8 E schedule.at$createAction(2, actionGroup);3 [, e+ N8 u* W* A: \
4 p3 c6 N- [, M* X
} catch (Exception e) {1 J7 f2 e- U7 C+ q1 [
e.printStackTrace(System.err); o5 u2 C) P! m& L7 ~
//System.out.println(e);0 l5 r/ f5 G6 W. }( B+ z& `
System.exit(1);8 h( |/ j0 j' [- b% z8 t7 L! m
}
" Y! e& F# O* p3 h8 K& S7 \
0 X1 q: o" B" i2 \
: U; q) ]( J6 Q+ d, V" a6 U }
- W) N& X# V6 r4 Q5 E$ V" g
, z( B0 X% \: c+ r$ c# P private void swarmSetp() {
+ B# Q2 i, \8 j9 [ list.addLast(new Agent(Id));1 c8 T8 w7 Z2 |% A" t. {( x
Id++;0 p- A1 |& M) H' y
}
* H! z# Q$ G5 v+ i8 f% q
1 h4 f; l. k; v, p# f public Activity activateIn(Swarm context) {
) A9 W* X& i/ I4 I% O super.activateIn(context);$ Y( C& h) A, ]& N
schedule.activateIn(this);* i: n/ S" l- | @' P8 G
return getActivity();' N# V: H- P: C
}
+ w" A3 h3 w3 b. s9 R
) F" n. P3 h0 j public static void main(String[] args) {
1 u* {+ G+ K6 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ l6 j; Q3 m6 j( k0 n0 Q) C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( W* h% a0 K% S' B7 s3 l swarms.buildObjects(); Q) z4 X" n) Q
swarms.buildActions();' m% F; a" c8 W: A) y: {. c" b
swarms.activateIn(null).run();$ b! [+ n5 R- F& p9 s; h7 u) F
}. x# [5 l% P2 H# ?. L
0 n3 A$ H( s$ H$ V+ f {6 C
} |
|