|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 N. ^7 C F6 A+ @
& ?5 D" M+ F) K0 z( p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 ?, q. E; W% l" q# n6 Z) g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 G* |; c" M+ O% I) a
swarm.SignatureNotFoundException
4 o9 g7 _7 S/ G% M; ?. ~/ k at swarm.Selector.<init>(Selector.java:76)
# p A# z" c2 `. a/ k1 L3 Z2 w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* @- ?7 F# M1 n- K
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 i$ s0 p e3 F* N: I+ ^" J
) H0 f3 M- Z2 g0 m3 D9 k# Y3 U1 Z
( M: ]5 E+ N4 s2 R# U2 D5 o5 }import swarm.objectbase.SwarmImpl;, }+ r) f2 s" P Z/ x. Z* ]) H
import swarm.objectbase.Swarm;$ Z4 a, d+ D: i- f1 W) P
import swarm.activity.ScheduleImpl;7 x t" a6 `- v: W& X* ]- F5 f
import swarm.activity.Activity;0 f* b& G4 `! Z( N
import swarm.activity.ActionGroupImpl;$ A) E# \ L% m5 a7 A: R- j
import swarm.collections.ListImpl;4 e: i( b& T5 A3 P! {6 {6 D' @
import swarm.defobj.Zone; . X7 x- I- p- U4 j4 k# m1 Q M
import swarm.Globals;
; t# x$ r& J0 S7 B$ vimport swarm.Selector;4 K3 H; I; b/ N. T( E) l" }
import swarm.activity.ActionGroup;
7 R6 X- p5 G: h; K1 k# |& w2 a3 \3 Hclass Agent {
$ p# _* b, |. N; f N* G3 W: ]4 J char id;
7 X( P5 p- h. v |4 c+ a7 f) b! K) I: q" r5 R/ M# H; e6 T
Agent(char id) {
E- R( @5 `! H$ u this.id = id;2 y+ J9 W' y \9 K% K* g- W8 i
}
$ C( c8 J+ T5 j5 D( @. x$ n A9 g+ u+ ?9 L2 [3 w
public void agentStep() {
. s+ I$ H. d; u5 v6 B System.out.println(id + ":" + Globals.env.getCurrentTime());
$ o5 t9 \) @. ]" L }
. A% a6 S7 j- M, a) g) L1 u}7 F# l: H- @* z8 B7 k4 X# d Y) L
) Y1 W. e+ ]1 t Xpublic class ActionGroupDemo extends SwarmImpl {
1 @3 f" L) h" o8 L ScheduleImpl schedule;! x9 ?! W$ N, p
ActionGroupImpl actionGroup;' ?( c# x- S4 x" L5 r0 M! D) @
ListImpl list;
; o3 _4 O2 I% y1 W. Q) ? char Id = 'a';8 r* [ z# @5 o' G$ Y2 q
" X; O* I+ p. f M ActionGroupDemo(Zone aZone) {
; C* N9 Z+ N& C* _. H! D super(aZone);: m, e q4 `5 q& m
list = new ListImpl(aZone);) H; r+ i) A- w5 e4 |7 i; g4 ]
swarmSetp();
/ [4 s; _+ |# t5 x, b actionGroup = new ActionGroupImpl(aZone);
! p) T2 q# k% V- g' X schedule = new ScheduleImpl(aZone);
5 [' `3 y0 Y; G5 d+ a. @# T* M try {, U2 I" Y% H( I" E0 k
Selector agentSel = new Selector(Agent.class, "agentStep", false);
# S/ e* x/ y1 b* J4 c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ s' o; B2 u# |$ L H1 X7 m2 ? \* @
0 d1 m+ e: q {/ X5 D actionGroup.createActionForEach$message(list, agentSel);
r) X; @" }5 h( u% V# A$ @8 C/ J actionGroup.createActionTo$message(this, swarmSel);8 Y6 c& c1 T! c1 ~! m/ ?8 X8 \
schedule.at$createAction(0, actionGroup);
% g3 \& h o. x5 o! y schedule.at$createAction(1, actionGroup);( n4 l& k8 T. b1 d& u: I2 d
schedule.at$createAction(2, actionGroup);
# F& Z$ j0 N- C( X9 Q7 l5 S0 _
9 s5 m1 E5 c$ C b } catch (Exception e) {
8 c( p I+ I* ^; P( {# P. d e.printStackTrace(System.err);
3 c9 l6 H6 z& G5 l //System.out.println(e);2 |3 f8 t3 a' C T; y6 J" F; X" E9 t. O
System.exit(1);. s9 x+ H' T5 C2 ]8 N, @, {% H. M: K
}# ~$ s% n, [8 @" X! s1 Q( x
, |/ u i8 }6 I+ O6 O4 T
* C. @: @9 c6 K* s" p
}3 e6 q$ ?: k* d. }+ y
8 d; p; T. F: D1 c- D private void swarmSetp() {
! ~: m1 K" {% n: t, T, _2 l [ list.addLast(new Agent(Id));$ _! n' E3 K; ^) f7 w% G4 Z; p
Id++;( c4 \& a" L3 o# ]1 t+ c5 A
}$ s+ m, w6 q1 x; K/ o9 N
7 V3 }$ m2 B% N- o3 f public Activity activateIn(Swarm context) {7 Y3 K; b' C. Y; j, Y' a, D
super.activateIn(context);
( M' |7 o* ^% Z" W, f schedule.activateIn(this);# W* Y! F X& u
return getActivity();
( w# ]$ r8 i0 t }( L: e9 N5 d% T5 t: a5 k
, m# q+ W: y# p" \& Z5 C; D# v/ F
public static void main(String[] args) { d* y9 j0 z- c, ^ C _) t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, `* b7 y$ ?/ U, ~
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. t/ w$ l7 g; N! u1 H* n1 p
swarms.buildObjects();7 k9 \: g$ u7 i. @- T+ `' Q
swarms.buildActions();8 f( O& w9 M3 U( M
swarms.activateIn(null).run();# p( Y4 ]. W, E. N. m. [$ \
}& Q I4 h: D- d$ ]' d6 ~ i/ `) E+ f
0 i9 ^9 T) |3 e6 \! H
} |
|