|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; I0 [0 J# c5 W6 w! B% U/ W5 M. s9 F4 g0 i8 p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& `" `5 l! S$ d2 Y0 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 ^, M* i0 Y% u+ q, P- o8 Jswarm.SignatureNotFoundException
% J7 v8 D8 p+ g* @2 R at swarm.Selector.<init>(Selector.java:76)+ }7 m# c3 x! i( W$ |
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 c J8 K5 k4 l- F
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 u" m" \& l0 I* j0 v) Q
$ X) r& R5 C# v& H+ h3 A& ?$ F
" z% M1 D' E0 N! z& Gimport swarm.objectbase.SwarmImpl;
7 o3 A# o2 L0 _, k3 himport swarm.objectbase.Swarm;
% u* p/ H* ]+ E mimport swarm.activity.ScheduleImpl;& Z4 S" c5 {: X8 S p
import swarm.activity.Activity;
0 ]0 |2 E+ |. ^9 A5 p* kimport swarm.activity.ActionGroupImpl;
" {+ k. q# w6 n* r' Timport swarm.collections.ListImpl;6 d- \8 `: P: V, ]! a' H4 w# p
import swarm.defobj.Zone; 1 q" v9 Y0 D- r9 A3 L
import swarm.Globals;
4 I# L' m& v2 K# |; rimport swarm.Selector;; P; \& z+ v. g8 c( m4 k! h5 I
import swarm.activity.ActionGroup; ( j: u; X% H1 I
class Agent {
, l+ e) Y( i- e( l& I7 Y2 | char id;. H6 j2 g: B, B- C6 P( {
: j- C" U% L+ m0 P& ^: c" G3 c6 m+ P
Agent(char id) {
1 N' E& L& r6 q# u this.id = id;3 \ }) t, K+ U! X( A h
}1 D+ Q- Y, P9 j& F3 g* G) i p
* T# J( V+ q4 B* z# ~- p public void agentStep() {
. M3 n0 B5 u. c a, `+ L System.out.println(id + ":" + Globals.env.getCurrentTime());7 R/ s% H1 b5 T. O) z
}
! h" T o5 `! s- P/ o- _}, b& A. ]) L) L+ e. I1 d- ]
- W5 j; J+ s" s7 |1 R2 t# b
public class ActionGroupDemo extends SwarmImpl {
8 P% o& n. [8 q# }7 }0 ~3 r; r- @- X ScheduleImpl schedule;
[/ i; _1 z7 e" y% |6 | ActionGroupImpl actionGroup;
& B6 A' |3 H. t) C1 e ListImpl list;& |6 a3 g. y7 g& W: l1 D
char Id = 'a';
4 w4 q* }$ C& O+ f- d9 m3 f9 B1 M' R+ M8 M) H) J6 C* Q
ActionGroupDemo(Zone aZone) {1 Q: K: f7 o- u2 ? X. h, G8 ^( K
super(aZone);0 J. \: y. p5 E5 v/ R
list = new ListImpl(aZone);
" I7 e/ V ?$ P+ b swarmSetp();
7 T B: t/ ]+ T1 y0 }( p actionGroup = new ActionGroupImpl(aZone);
0 U+ ~- z9 P; k schedule = new ScheduleImpl(aZone); `# A! X, }4 V! |) n' X$ h
try {
' V2 h: M3 b/ n" l Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 c. O# A6 t" \* f Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: R) f X! V) \
0 k7 T$ o" u0 M. E' g+ \- |% j actionGroup.createActionForEach$message(list, agentSel);
, v) J9 }) d3 J# l" f+ k0 ^5 X actionGroup.createActionTo$message(this, swarmSel);
m; M' x; q0 P( h8 i! \ schedule.at$createAction(0, actionGroup);0 J9 x8 L3 O' G
schedule.at$createAction(1, actionGroup);6 {$ i" {: d$ [( Q3 \" C# X& d
schedule.at$createAction(2, actionGroup);
0 J' Z/ ?, r0 _! ^& I
) {' Z# Z( n' o& E: f) p } catch (Exception e) {+ x/ o- B3 u2 I& y: G; B
e.printStackTrace(System.err); _/ O. R7 y, B! o
//System.out.println(e);* V, G$ c9 B1 E* x% S: I6 r2 r- P
System.exit(1);; p% s0 P% {; Q- K8 \. H* K
}! t8 {3 i6 L; U& A( f5 P; {
( F5 U" R" [. {8 M8 g; v% A' t& d+ q* [0 a8 r0 ^
}
4 }1 a; f1 `! H( ]
" |7 B( W* N) z: a( w0 o2 \ private void swarmSetp() {
' U& y, `9 I# e% j0 v1 {" [6 Q0 W list.addLast(new Agent(Id));
$ X, Y$ [) p O# p8 M2 }# H Id++;# z4 F: w. S0 Z* o9 ]$ ?$ V
}
; f4 E1 c: r0 x- L, \# H1 X0 ]& y6 v3 E' t9 R
public Activity activateIn(Swarm context) {
+ m+ b! G/ Z, S3 X0 a7 @9 F super.activateIn(context);
: {) z: }( H; l6 } schedule.activateIn(this);
6 S# f! F9 `8 {+ E return getActivity();
& X& d4 r6 T% L; J0 ~% H9 Z }
4 R* m: y! H$ K, x3 J- w, `) Y
7 e0 K+ E0 m6 [" ]+ _9 a6 k+ |$ B$ ?$ W public static void main(String[] args) {
- f7 Q9 T' Y+ W1 R' Y" c Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" f8 v/ l1 ^* {: Y. J
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 A9 o }4 @7 e/ Q; Q swarms.buildObjects();
4 _ m, [6 U2 q# ~4 u' d3 d$ x swarms.buildActions();: d* V) Z$ L- b I5 q
swarms.activateIn(null).run();! }" F; O# V: Y4 {6 q& ?
}
: O) w% ]. z8 Q- C4 } b* y, c2 X( x) [( g4 b
} |
|