|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & k0 ]% N P' p5 k3 I) w+ l# _
; S* q% k& c# e6 g [/ I# ^* @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 p4 z' t) N& S; f+ `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., |, H: \: A( E$ C" o9 s
swarm.SignatureNotFoundException
2 K5 W! ~+ z3 ^. ] at swarm.Selector.<init>(Selector.java:76); o" y7 k# l X; j, Q% C7 i
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! b7 ?/ p/ U- A+ Q( c7 Z2 { at ActionGroupDemo.main(ActionGroupDemo.java:67)( t. c# n2 @/ @' `
# }4 T; z; Z# a9 e9 e/ g' d/ @0 B9 A9 @+ V% P( y
import swarm.objectbase.SwarmImpl;. u0 W+ S; J9 P2 F! j' x
import swarm.objectbase.Swarm;
! [! H( N( |1 U2 k0 wimport swarm.activity.ScheduleImpl;' t4 O' p8 V; t$ f% i, Y
import swarm.activity.Activity;
+ L' C' x3 R8 I [import swarm.activity.ActionGroupImpl;
0 p# O1 _6 @& Q# ]$ O; n( Ximport swarm.collections.ListImpl;( B: D. G! K: H5 e) p! T
import swarm.defobj.Zone;
. M* ~% Z' s" i0 a. rimport swarm.Globals;! N- c6 J6 s8 [' L* O+ k2 j# V! T/ [
import swarm.Selector;5 ~4 T. m R7 q% @5 b0 S- X
import swarm.activity.ActionGroup; " P+ _. N4 c" W
class Agent {! ^/ Z( h$ z7 |
char id;. k0 P2 f% g, X' R G0 c
& n# q& N1 e( \; k2 q2 g, Y+ x Agent(char id) {; X# H, `3 d6 A8 w* n
this.id = id;( A# H( k1 z- h2 Y4 B# O
}! z) q. G5 S# \' J! W
3 r2 \1 c- ?; b1 H0 Z public void agentStep() {) A" E( F! @- _
System.out.println(id + ":" + Globals.env.getCurrentTime());; b9 F8 ^, e* U1 f/ |2 |4 B
}
/ s( n% |" T2 C! W' t6 x}
- l$ I, g( T2 ]2 b% F; _- J0 A2 C- J! ^! b4 u2 M
public class ActionGroupDemo extends SwarmImpl {! ^! c5 d3 C" h6 k# z, o
ScheduleImpl schedule;: ?! {9 A) s- [" ?0 Y+ q
ActionGroupImpl actionGroup;" \! J% N, `/ O- a7 \
ListImpl list;
& x* c9 u4 B/ N: @ char Id = 'a';; |5 `( V/ j0 `9 } q
2 o% `( s7 c. E) z( t0 {4 K ActionGroupDemo(Zone aZone) {6 J9 l. r! L2 h, N: @0 F. i% N$ O
super(aZone);
9 j( y6 l1 a: ?/ a* P/ i" K- S list = new ListImpl(aZone);! f' a8 H7 u/ y l' I
swarmSetp();% v8 o5 u! H- M- |5 I2 m
actionGroup = new ActionGroupImpl(aZone);
& t; R# B, r% B; s% \' e n schedule = new ScheduleImpl(aZone);
% \" Y5 D8 p8 D8 o- U3 ~8 @! D try {
+ B0 S$ q1 E0 r/ x+ x Selector agentSel = new Selector(Agent.class, "agentStep", false);: D, I$ X2 ]" S; ?0 J& M3 Z( O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
S& \$ q& g0 l8 B) n+ w! G
8 Z; l. ~ p$ H2 s+ w1 d actionGroup.createActionForEach$message(list, agentSel);$ D0 S9 Z9 @; }
actionGroup.createActionTo$message(this, swarmSel);
/ t; t8 @0 t$ O9 ~ schedule.at$createAction(0, actionGroup);
+ q2 z: d7 V; a) E schedule.at$createAction(1, actionGroup);* W# h' b/ J1 Z! W) R* x/ U; F/ U
schedule.at$createAction(2, actionGroup);. q# N5 h: C5 G/ q; h6 K! L! B
; W; M; f* t' s" w
} catch (Exception e) {
& c- X! A& V: O4 P e.printStackTrace(System.err);- F# b4 q0 ?1 U! W$ J5 F
//System.out.println(e);
- }0 a5 L" H2 }9 T5 d0 X1 N5 x System.exit(1);7 ~) [( @. J l! p- C& K
}
4 u7 c* f( v x* L: C4 e2 S- @: j) ~: ]# T' R
0 b/ Q5 d# } i5 d
}
0 o, S( z+ `1 [1 u& v: q: _- u! o- b$ F% E% D) M: N( R$ I8 H
private void swarmSetp() {
; g2 S- W# I ~! W8 |7 e list.addLast(new Agent(Id));5 h4 L0 r7 q. r- y
Id++;5 `& e* G" [- x7 J( F2 T0 O
}" m% a2 f0 f; o" s/ Z: R4 q
3 D) @/ H A) T& Y& Y' K
public Activity activateIn(Swarm context) {7 {+ R6 m( m; r/ b+ Z+ z2 v
super.activateIn(context);
. c8 u2 \8 m, e! s4 \ m) v schedule.activateIn(this);
1 D" p' [* [# e& Y' i return getActivity();/ ?- H, M2 V* a8 ?
}, `. z+ N) Z! w" V
) Z* I+ _* t1 S0 {4 E
public static void main(String[] args) {
# t0 d# k/ {0 @; T' o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ F) ~' y" ^# Y2 D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# ~+ d$ v5 K. u; ?- N, d R7 K swarms.buildObjects();
- a% t& }6 _7 j- v' r swarms.buildActions();
2 _ f8 f/ T; b% h0 ` swarms.activateIn(null).run();; `0 x' N+ {5 W" P: z9 s' m/ g
}* \/ k; z0 M& b$ p0 l4 x( y
: h- e0 T' N" Q; g} |
|