|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' F1 Y3 V/ r) g0 q! |4 a1 Z8 L4 O. m* U% G5 j) }+ z6 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( `/ }- u& E- @9 E/ R2 f) R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: d7 A1 n3 t" l% l }# H) K% i
swarm.SignatureNotFoundException7 ? }) x2 E2 N6 o d5 e8 D
at swarm.Selector.<init>(Selector.java:76), N' R! u% @% x. T' ^6 p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 I+ ~; K, w+ O) a( _: o: u+ v/ n
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# U# Q: |9 g8 E: ^4 G% ^" a4 B0 a% p' Z B, Q
, R+ k5 `4 H( o% S% eimport swarm.objectbase.SwarmImpl;
7 e$ x/ q- H* s/ Z6 l* U" oimport swarm.objectbase.Swarm;
0 V/ W! z; @9 L) eimport swarm.activity.ScheduleImpl;
& ~! l& H1 T8 J5 t' timport swarm.activity.Activity;
) z* x& P3 [ g2 c# w7 Simport swarm.activity.ActionGroupImpl;; P e" |! a0 K
import swarm.collections.ListImpl;
' m4 ]( Z3 C, z2 ximport swarm.defobj.Zone;
# G; c4 m% ?1 V" uimport swarm.Globals;( d1 c) p. i* R; I N3 Z6 g+ W
import swarm.Selector;
& Z6 l- J! D) gimport swarm.activity.ActionGroup;
. S! c# r1 u( x; ], n# @$ Lclass Agent {
1 b: `+ I0 A6 K' y4 s char id;1 X. Y; }& C' r1 j8 D* Q
' N) t; q+ t$ [4 r1 H+ y# f- i$ ^
Agent(char id) {
! M2 {7 V9 c9 h+ P1 F& d this.id = id;6 H; S0 c+ ?4 _* }9 N) x |
}/ M9 _- E( T- r2 R, g: x3 W! g
$ l. n1 y' t7 Y& L2 N. u( @+ d: e: U public void agentStep() {) s) \6 }; _- e' V8 j9 t
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 @( H, t, ]2 I Q# t }7 d* } i- E4 Q
}. N$ r+ u) l+ H+ f8 q3 j2 B
/ v# r! o# W* N4 {8 zpublic class ActionGroupDemo extends SwarmImpl {
/ m) r3 Q8 N' Z( G ScheduleImpl schedule;2 _3 m1 Y: _1 ^( H( H" h
ActionGroupImpl actionGroup;: e. L- x1 _# o2 X2 l
ListImpl list;, m3 q2 S, t8 A
char Id = 'a';
4 M" K1 V! V: {% y! U$ U: P3 L( ]4 z& Y
ActionGroupDemo(Zone aZone) {( V/ _. a p$ l6 y' W7 x9 z Z
super(aZone);9 o$ r# ~" i I# }1 c0 ~( \+ e
list = new ListImpl(aZone);
1 m; [& F3 w/ x1 b: M swarmSetp();1 g* |2 ^* _& {+ I. x" m& i% J
actionGroup = new ActionGroupImpl(aZone);
. s# |' J! G/ K6 G schedule = new ScheduleImpl(aZone);' o7 M5 ^) U+ X$ ?- e6 \
try {
0 I6 Y8 c. \0 e Selector agentSel = new Selector(Agent.class, "agentStep", false);1 J0 d5 z0 E: [) O+ R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 ?3 q; V- s: {
$ i. e/ I# G! j8 y+ z6 W actionGroup.createActionForEach$message(list, agentSel);
1 \* ~, Q3 m& `- J" R9 ` actionGroup.createActionTo$message(this, swarmSel);% ^/ L$ O2 }% Q- M+ ]% U
schedule.at$createAction(0, actionGroup);
b# Z. j4 N& A) `- I schedule.at$createAction(1, actionGroup);. T! L( T$ W8 s7 }7 _
schedule.at$createAction(2, actionGroup);
( n8 C! }- n) V8 i+ F
# L) ?9 X$ r6 R } catch (Exception e) {! g `% e2 w% @3 h$ y
e.printStackTrace(System.err);
* W# P+ _6 W' a$ t //System.out.println(e);7 g$ n4 Q6 v4 L- H; J# e _
System.exit(1);# I6 [& z$ u) J3 h; g0 Y* a" c
}
, [( d) i3 i V1 x
! p8 w! E6 h. x
! o% j/ g: p4 e }4 z. p; x% s; {3 e# H6 D/ z
% O0 V0 t q% E private void swarmSetp() {: |5 S6 O# `" Z! r1 z {
list.addLast(new Agent(Id));, B8 p4 D3 X* b X
Id++;8 g7 B, U0 _ H; |! e7 ^
}% g( R- b- `( l; r& I
0 c) W: G1 {# l) S/ Y; B/ h, I
public Activity activateIn(Swarm context) {7 N3 Z5 j" a% t7 x4 p
super.activateIn(context);* x6 @* E0 t3 _- G9 k/ [# ^
schedule.activateIn(this);- _( R ~* a- }+ e9 u
return getActivity();1 v( r. u& h8 X5 F
}, z4 ^& e2 M8 i5 b+ k7 O& H
# D3 c, b/ b) k$ c public static void main(String[] args) {
W6 A) Y0 d+ B; U, y& s5 b" H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); E2 f: {* w3 v( a1 R: C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 Y- S0 C& {. ~* O, e
swarms.buildObjects();
% w$ ~ S! g% ]! y( p& K swarms.buildActions();
1 y" R3 s; N2 W swarms.activateIn(null).run();
( O0 ?' t3 E/ P }* [+ a! J: x! l, [# m
: p( A6 O, \8 D& ]
} |
|