|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 o7 A# E1 l N" i$ e' C9 t2 o& t7 S; }7 K9 P, o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 `9 {8 G& X" Q7 g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. w* m c2 v9 q, d9 d- J
swarm.SignatureNotFoundException
S8 ?2 |7 K8 l4 Y7 B+ Y0 W/ o at swarm.Selector.<init>(Selector.java:76)
0 g! v9 c3 E& d at ActionGroupDemo.<init>(ActionGroupDemo.java:37), p" f: h3 i. K! m9 k' p
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ d. x' h$ R1 I, N6 e" \# G7 I4 F
5 h0 ~& ]2 \3 m9 A. L$ C- X2 f
# L2 t4 e N: P$ h6 N5 Y* D5 gimport swarm.objectbase.SwarmImpl;
) f/ z6 G6 Z" R) limport swarm.objectbase.Swarm;
" B* E0 R6 D1 q4 i5 iimport swarm.activity.ScheduleImpl;
' ]: ]0 w" d7 U W$ W1 O2 r- Eimport swarm.activity.Activity;1 L" L' p8 Y- \4 l/ N3 y+ Q) u/ \# I
import swarm.activity.ActionGroupImpl;
# t$ R3 ]. R9 uimport swarm.collections.ListImpl;1 i. O" \+ s/ c
import swarm.defobj.Zone; 0 p4 N" @' E' e+ V
import swarm.Globals;0 ]. `+ ~1 y/ @/ V9 |
import swarm.Selector;# O$ C1 y0 d' k( A/ j5 w- p+ d
import swarm.activity.ActionGroup; / x$ \2 F3 |" X" W$ f! T
class Agent {
' T) s0 Z' D3 v# x6 Z8 Q# r( ~ char id;1 O* s" Q" f% K+ N
5 i: z8 k F4 ?4 [; T$ c
Agent(char id) {* x5 W! H, T! c& ^! j$ f' Z
this.id = id;5 D1 h o7 k, E9 P9 Y
}
. I$ A) Q- w/ ?/ d6 x1 [5 j# i: x1 w% u
public void agentStep() {9 @+ k0 x. F8 U
System.out.println(id + ":" + Globals.env.getCurrentTime());0 A2 d# T5 z! V- e: O# K; i
}
0 z1 j+ P5 g1 z# U* B}
: Y: p+ b2 m" B8 i) Z0 L+ R" ~$ N0 Y2 e+ a/ S% E( g
public class ActionGroupDemo extends SwarmImpl {
% }6 L# ]& r/ r* K8 L ScheduleImpl schedule;
" M3 W1 K& y# d( K ActionGroupImpl actionGroup;
3 `! n) O$ |$ |$ t$ x ListImpl list;
% g4 ~+ G) T8 u3 b char Id = 'a';6 b& @; C o3 C5 i
5 i. b, e: z: Z/ D
ActionGroupDemo(Zone aZone) {, D* m0 k2 e1 s6 n2 ?# t
super(aZone);
8 K+ W$ }# ^1 `; r6 L3 A& K list = new ListImpl(aZone);
- _ c- f' h4 ~5 l0 j$ i- k swarmSetp();
/ J% m' v& R& i* D, X, y) T0 S actionGroup = new ActionGroupImpl(aZone);
# b$ }% z( B# g5 S9 r, w) } schedule = new ScheduleImpl(aZone);" I2 f$ U0 N# B# f; o' S- {! m
try {
3 a" ]* R+ h% q; a$ P/ p: L+ j. r/ R; Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
- G& z+ K* H4 S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 `" U0 C8 l6 Q. ?4 _1 ?; ?, h$ Y
% W; R8 {/ \1 U+ F! C actionGroup.createActionForEach$message(list, agentSel);/ N( V; a6 Y2 t' K, X! U
actionGroup.createActionTo$message(this, swarmSel);
+ o/ \# ?! B4 n3 z schedule.at$createAction(0, actionGroup);
3 m- S) s2 g- Z) H schedule.at$createAction(1, actionGroup);/ l. N) ?) i7 V' }4 l
schedule.at$createAction(2, actionGroup);
' n0 R O$ V: F( k/ }# t) h2 a
$ u6 v, A/ z4 P# J/ ^ } catch (Exception e) {
+ S8 a( M& N: n3 B: F e.printStackTrace(System.err);
& ?6 z1 y3 P4 X/ R/ m1 g //System.out.println(e);
" D' A! d+ g+ P5 t5 N: B System.exit(1);
* k; [3 ?* y5 O }: t5 Q7 M" n* |8 G8 F7 N: h1 h
4 k, V! ?; t' i$ v' D* ]5 ~5 k+ _# v' l1 f* S/ S% u _
}
3 B3 Z/ c4 B+ W5 D. X
3 p' j& j! F) t8 U0 ^3 W9 ^ private void swarmSetp() {8 D+ y5 n9 u" W8 ?! n
list.addLast(new Agent(Id));# d4 }9 {+ k6 x; Q- `
Id++;
: r6 E4 A# S3 B7 A }. ^# U6 L# w `9 B5 L' [: [% Z
% r! E) G1 w/ Q8 x) w7 [. A8 `; Q public Activity activateIn(Swarm context) {
" M* @( B# J8 n super.activateIn(context);
# I0 o/ {! x z. E schedule.activateIn(this);! m8 L' E% ?) H% F& j7 w
return getActivity();
; r1 r3 ~+ U; S$ ?, q' W }( a7 H, ^* U3 L
- Q3 L/ W2 l2 U. C public static void main(String[] args) {* \8 m8 j9 s+ o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! T. B2 t+ P* i. h8 N$ Q ]9 u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ B- \( Z0 \7 q, p# M4 \. j) P
swarms.buildObjects();
2 ^/ b- E: e/ }; Z9 N7 I" ?9 H, D swarms.buildActions();
; ^+ M+ ]3 x' J! s& @4 b) n& N/ Y9 l swarms.activateIn(null).run();) K5 m6 \) d2 t# }. c& o& V$ ?
}
% t# Q! a- i. I! F9 X$ O0 l! O0 @! U+ ^2 n6 E7 S( ?
} |
|