|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 w" x3 w4 L" b! l8 D N U4 b4 v* X! y4 m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& y- o% A/ t3 C3 G0 v9 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 D1 a! \# x. v9 L( t2 H4 q0 W
swarm.SignatureNotFoundException
1 x3 i, m6 Z0 O# f% N at swarm.Selector.<init>(Selector.java:76)
) v* C5 b% C/ `6 j& v at ActionGroupDemo.<init>(ActionGroupDemo.java:37) l' K/ \$ Y1 s: x z- J: i: @
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* E0 x; {$ J. p& R+ S+ i" n: t3 k! M" m
3 x$ |# I7 m8 u0 y( gimport swarm.objectbase.SwarmImpl;
; M R( m- R) M0 O0 z6 N$ Jimport swarm.objectbase.Swarm;
. l% Y( g y; ^9 H' eimport swarm.activity.ScheduleImpl;
c; ]$ W4 U; @import swarm.activity.Activity;' M1 t0 T; n C2 S' o$ b3 L+ c
import swarm.activity.ActionGroupImpl;$ t* a( W5 t; r4 s: y" a
import swarm.collections.ListImpl;4 }0 I0 K- P6 R6 I3 g1 M
import swarm.defobj.Zone;
& h7 k+ L" I+ a5 \6 g) ~+ Dimport swarm.Globals;
: ?& ?% h) d( ^9 ]3 _9 yimport swarm.Selector;/ D1 x' j- t. [2 z* g
import swarm.activity.ActionGroup; 3 t4 y7 Q& W ]1 c' p8 D
class Agent {
7 C# q6 x+ U2 M4 ?: i char id;
! _: p# z( J. c" o Q0 ]/ h/ L; d. f
Agent(char id) {# b6 y' Z: n* P. e' c9 ~
this.id = id;) g8 x8 t. ^8 K: r. B
}
3 |- O" v. P8 }
% E( @0 t% B. G public void agentStep() {9 d- ?: }- V; ?1 d' h3 H
System.out.println(id + ":" + Globals.env.getCurrentTime());( H6 }: s2 W" N' g) H
}
' g R- R3 X; `! \; O; E}
3 U' b1 y$ Y: `* c
- {; v9 P. ?4 E# Apublic class ActionGroupDemo extends SwarmImpl {
( X8 _$ U4 E& ]/ R* F ScheduleImpl schedule;6 M# a. Y0 I. r2 e6 S0 E q3 N) s
ActionGroupImpl actionGroup;$ X2 p1 D, r9 P% e# q9 y
ListImpl list;" m8 r; u% \6 n# { r! R! H
char Id = 'a';
/ \/ U& F6 s6 C1 G: L) g P J" {+ T- p5 j( c N; E' M' @2 o
ActionGroupDemo(Zone aZone) {
Q7 |! ] A9 p7 K) [# p/ C# E super(aZone);
/ U8 g/ }2 r* ]& d7 |* B list = new ListImpl(aZone);
3 Y) A8 i+ W$ _6 w8 t2 V9 k: X swarmSetp();2 G; D' P& D; K% L) B; l
actionGroup = new ActionGroupImpl(aZone);+ Q* t7 x5 U1 Q% |/ L
schedule = new ScheduleImpl(aZone);( D( y( q9 U5 Q6 T3 U7 {' e
try {+ ~0 F5 G- i) v1 K
Selector agentSel = new Selector(Agent.class, "agentStep", false);% |- H2 h: {, P( e+ k8 T ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* m* x( @4 c% e e1 ?" Q @- w# }
4 z, P3 N2 W& O% \% V- v actionGroup.createActionForEach$message(list, agentSel);3 P% S3 R \$ g3 a
actionGroup.createActionTo$message(this, swarmSel);
5 b! [. _: O6 T- }2 g schedule.at$createAction(0, actionGroup);+ v* ?9 y$ S. m+ i5 h3 R& z& Z5 r% i
schedule.at$createAction(1, actionGroup);( ^1 P# u/ X; A2 b' g
schedule.at$createAction(2, actionGroup);4 F# s! c8 G" P0 g& H
2 |+ `8 g6 q) S! j: N- z) \/ q
} catch (Exception e) {
w/ [/ o& |; F) V; j% g e.printStackTrace(System.err);
/ G+ O( L' G7 a$ d0 d' z2 P5 @ //System.out.println(e);
& V9 D5 b& f9 t7 f3 T7 w System.exit(1);1 }3 R1 F" u) x% n: e
}! x' C+ z0 N& l+ }+ a) _, `) }& ~
5 E1 S1 m8 I: x
1 z" W) p1 f/ H. x6 | }
) P# b& \# f ~( j& v% B
3 e5 S9 S9 K+ k! h- U7 c3 d/ h" z6 A private void swarmSetp() {3 k6 u0 `" y3 o1 c3 J- b
list.addLast(new Agent(Id));
6 G2 a- n' \9 U G% W; E Id++;
% e- `) g7 m2 g' R4 e" @ }
# D; [0 c' b" @1 A0 M/ z0 @- A9 c4 G) Y1 C! I% W
public Activity activateIn(Swarm context) {
' J s- o K! H2 r1 A super.activateIn(context);1 g1 x6 @2 [# A/ m: \! b
schedule.activateIn(this);! A/ q8 Y: Y2 {% g
return getActivity();
& l6 E0 M; h, k$ G" l, q: T0 T/ X }
: _' ]6 v$ U$ ?3 [) n* r$ w! }+ I, v1 ~+ ]$ k0 r( O, m! u
public static void main(String[] args) {
$ m* x8 I% h. d, Q, @8 d Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 N+ j: N. n5 v6 s
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, a/ ` l- B9 h4 a: _1 M! S swarms.buildObjects();
+ i3 o! f% C# c; b3 U swarms.buildActions();
& r7 T) r. f. m- Z swarms.activateIn(null).run();
! ~ |6 u: H# a }2 n6 T3 l$ K' W+ @2 g6 ~ I
) W! P$ i+ z5 l8 y0 X( M& R: N} |
|