|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 x" a9 f' q9 X1 P1 |" U# X$ g) q& T: a/ x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 V( a4 D. ~# S, z0 t' P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. r) e7 x: v& h/ S+ t0 X
swarm.SignatureNotFoundException
( x2 |7 {. q P c' ^/ O6 d at swarm.Selector.<init>(Selector.java:76)
) \: b$ w8 {9 x) b2 }/ V% j9 r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 E$ q, m# n2 n# h
at ActionGroupDemo.main(ActionGroupDemo.java:67)
T! D) }' {6 G8 S4 C0 d
5 O6 R7 [3 v2 U8 ? W- z2 n/ n: {9 J
import swarm.objectbase.SwarmImpl;2 P4 @ i0 R8 @" ~2 X
import swarm.objectbase.Swarm;
( V$ H% k+ ], `. k9 gimport swarm.activity.ScheduleImpl;
& ]3 ~! Q; `9 F6 F0 j; r$ \3 D( w: limport swarm.activity.Activity;: j' Y! U8 T' N/ w& x1 l- I" ^
import swarm.activity.ActionGroupImpl;+ W: G5 e4 ~' n
import swarm.collections.ListImpl;1 J. B- `* O- y4 J8 M
import swarm.defobj.Zone;
4 S$ I; J( Q. f5 A+ W5 Z( X# A7 wimport swarm.Globals;
6 Q6 H$ l5 K8 k: q& p$ Y1 E! H7 simport swarm.Selector;
c; M0 p8 h( c* himport swarm.activity.ActionGroup; ; H3 J4 A2 }3 i ] j" n
class Agent {6 \8 I4 A/ w- p$ L
char id;2 u& a8 `; g, o C! |. R
/ l& L/ r* Y7 g9 D) K
Agent(char id) {
7 ]% E8 i+ _ P this.id = id;# `( W7 q$ R/ O( _$ J; I! C
}
8 U% s# B# J2 j/ v% b, q9 F S, o/ E; i
public void agentStep() {
9 k. i$ @# e. t( G# ~4 N- a: l) y System.out.println(id + ":" + Globals.env.getCurrentTime());
; @7 @7 o. \% M3 S$ z: I3 q: Q }* l8 K1 M7 L9 h5 C* e( C
}
$ d- p& T% Z! I2 ~; [! G3 |
7 ^) e! _+ \3 N3 v* o) o% Bpublic class ActionGroupDemo extends SwarmImpl {
% o) v d* }' D ScheduleImpl schedule;
& j# B9 c& O6 P- d, O8 j X, Q ActionGroupImpl actionGroup;4 s( a& @1 V- J; h' F
ListImpl list;
- j0 J7 t4 G0 r$ J char Id = 'a';+ z6 B$ m! @4 m% T. q* {) q" a6 _6 T
5 I0 I2 @* k! L
ActionGroupDemo(Zone aZone) {
5 q; ?( P4 H$ L, Q super(aZone);% F% Z3 ^* q4 l' h) @
list = new ListImpl(aZone);/ a, S1 S" |0 Z' R" d8 N8 p5 \6 @ ?3 h
swarmSetp();' D s* y( x9 M
actionGroup = new ActionGroupImpl(aZone);
- _, L. Q3 D1 [8 U schedule = new ScheduleImpl(aZone);
: Y0 U _8 Y6 ~ try {# q* j! Z' B+ [' t! D( I
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 [; j8 |5 D# \4 I5 c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ w. r) r6 `5 Z" N: B; y& |
* g4 a& m! B6 {# p( M1 ^- D
actionGroup.createActionForEach$message(list, agentSel);
% H0 E1 Q0 D* q# Z actionGroup.createActionTo$message(this, swarmSel);
8 }9 I4 r( c6 H5 A2 N, s) G schedule.at$createAction(0, actionGroup);1 G- J) l& ~3 \6 j
schedule.at$createAction(1, actionGroup);
# y% w: E5 r( ^" ? schedule.at$createAction(2, actionGroup);" u5 M" F* k/ B% T `
% b' x: N5 Z3 L/ E
} catch (Exception e) {& Y; i& o) }. R% E
e.printStackTrace(System.err);2 q7 M- _: T M, W$ f; m
//System.out.println(e);! u8 L& B- O- o/ Q, a0 c
System.exit(1);
7 B+ a; l1 S* k& o! Q5 u0 I7 |8 I }0 y5 S, i% G) t2 {+ f; O
1 h7 {9 t- M( V3 e* u6 u; U
: }7 m% I- H F: g7 X$ G
}
- k9 {4 ?; s) @ B+ \; Z8 y. A- ?4 B$ y: M
private void swarmSetp() {# A5 s$ a- V* `' X: M; t% H
list.addLast(new Agent(Id));) m% P6 U% A! [8 X, P6 p
Id++;4 j% @/ V4 I( X; p" h5 @
}
: y! G- Q* v6 Z/ z+ q: I; q0 ^! ?9 W
public Activity activateIn(Swarm context) {6 O% o/ o! m' b5 N. n8 {
super.activateIn(context);# @5 ^; [) S2 U4 X' T4 P' Y, k
schedule.activateIn(this);
# B E/ f; I9 t0 T f) e1 ` return getActivity();) z+ k C) c1 v' S6 W
}
$ O+ \* b9 U9 C, C) \3 B
3 i% {/ i& f: d; g: R7 {! d# N public static void main(String[] args) {
5 U0 z, s8 ]: E% m' {8 n1 L* l6 ?% C' o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 W6 U" b+ w4 l6 m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ F+ J1 Z3 n% e* X swarms.buildObjects();
6 T- G' N. q7 N& { swarms.buildActions();0 i1 ^% G( j: l0 K* g3 e. A) d
swarms.activateIn(null).run();
) G' Z2 ?' O6 T7 i- p2 H- P! K9 ? }
( A P: h! _$ ]6 m9 A
/ W& x, B4 Z1 G* R} |
|