|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / P. |2 G+ ?4 I7 T- A+ O
* r2 @+ d9 u# J: V5 V# m1 e6 E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; @* X m# w' d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- n/ o, U3 |& F* U) D+ b
swarm.SignatureNotFoundException
: a* G) U# {4 g6 m" p# } at swarm.Selector.<init>(Selector.java:76)
0 Z7 {5 a& s" {. h H1 E" v at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 [+ A: ?" ]* x3 W# J
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 y) F s% W3 V7 z6 |* ^! R
* L- l6 m! e6 r) L Z5 B
* Z% {; F& y- @+ K; s0 B- |import swarm.objectbase.SwarmImpl;
- v+ J) ?$ _0 T& W7 X g9 C/ Fimport swarm.objectbase.Swarm;
6 G* X5 o& G3 l! g3 b7 G8 L$ E6 x0 qimport swarm.activity.ScheduleImpl;8 ^! T3 ~" M* a+ D( J6 W0 w
import swarm.activity.Activity;
/ J1 P$ j3 ~8 }) ]9 `" F7 eimport swarm.activity.ActionGroupImpl;
0 J* {) Y) ^! h# }7 P* c* Iimport swarm.collections.ListImpl;1 I, @* c. @% J& p7 Q
import swarm.defobj.Zone;
; i6 `2 |- s9 N* j3 u# E% {import swarm.Globals;8 A6 X/ D3 u' i: G4 U
import swarm.Selector;9 a" B! q6 d3 Q
import swarm.activity.ActionGroup;
/ k0 {" r. i+ u. a; Dclass Agent {
2 Z2 y1 P& I: v( o$ w char id;1 s# p, Y- r' R4 k0 n! J" D
) x+ Y( M6 Z7 m& y& e! V/ m& b Agent(char id) {
# o5 O9 t+ g) X2 F) i# x5 ] this.id = id;
$ ^/ I2 q% r" q* d& J0 C }0 P/ q# {9 q/ z! c& ` T
" j" ^+ s6 ~3 V8 b# p: Z" r public void agentStep() {/ z! v: J0 ~" U. O0 G8 u5 V& e+ u
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 h" a/ U: F$ { }! l4 R. K& d5 A
}, \" w: c- s8 f: P) q; x
1 O D0 @$ |. N( m5 R
public class ActionGroupDemo extends SwarmImpl {( c7 p" W0 C! {: [, u f
ScheduleImpl schedule;
! ?4 ^) U+ v! v$ ^ ActionGroupImpl actionGroup;6 b7 U( s. w5 o: N
ListImpl list;$ J" A# s5 Y0 T# Z8 p: S, `
char Id = 'a';3 m5 V8 A+ N( Q$ }2 J
* p0 D x9 \; o/ C7 @- f
ActionGroupDemo(Zone aZone) {% d$ S+ E# o v L% K/ l
super(aZone);
) w' R1 j4 Z1 _ list = new ListImpl(aZone);) {& r. G) W) @5 H$ J/ m$ i# r
swarmSetp();
! ^3 H! X/ K( w0 I. [ N actionGroup = new ActionGroupImpl(aZone);( b3 E" B T- |' T( x% C
schedule = new ScheduleImpl(aZone);, I2 H; R3 u+ g5 {' c
try {$ k. d8 ?" ^6 o: [4 L4 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) M- M: `, `5 N* `. ]+ }, W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. H# F" ^& i7 k, m1 ~7 N0 _
2 D$ \" \/ I0 H: n, M actionGroup.createActionForEach$message(list, agentSel);) @1 G, G7 @, q! b6 W. z
actionGroup.createActionTo$message(this, swarmSel);
! R+ I+ p/ b. b) G9 N4 s6 ` schedule.at$createAction(0, actionGroup);
5 y4 L G' E8 F, Q `: V7 p schedule.at$createAction(1, actionGroup);
& P% J9 {( H2 F, N" Y. L schedule.at$createAction(2, actionGroup);
2 r6 C% ?+ I+ e! X/ m
: H' s! l" r- t } catch (Exception e) {( B4 M5 W5 u3 N, O4 R' |, E c
e.printStackTrace(System.err);
/ k6 k2 x% k/ a Y5 ` //System.out.println(e);: a( S& N5 e* K: z2 G: H( U! {
System.exit(1);
9 x; A: z$ ~3 ` }
5 b& x4 d* {% k
% o, c& y( H3 b; B! o( z. a" g/ G `+ W1 F5 h" _
}
! t" _) @' `+ ?2 L e7 O. O8 ?
9 P7 n$ H, w q5 V3 d9 k private void swarmSetp() {1 c0 A3 \$ ^ J* q. a6 c
list.addLast(new Agent(Id));# O2 E7 O% g* h3 y6 R
Id++;
& V2 W+ f2 Y% t5 L7 I7 r }
6 v. P4 I+ l" Y9 E" H& S+ m t
' D8 I3 d8 y& R5 c public Activity activateIn(Swarm context) {
* E1 b+ s8 U$ Y. E& @ super.activateIn(context);1 N- t, A. m0 U: v) n+ c5 G- X
schedule.activateIn(this);
' z* F1 ]5 B2 v3 _5 J1 i return getActivity();2 C3 T- h8 k) m" A# C9 B; r
}
0 w! p; l( I5 h8 K3 x- W
( C% u2 c5 i b: P0 F' Q- G public static void main(String[] args) {
/ C0 | _% A5 }3 t' s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, r& V3 G0 R4 I3 p, E& E6 X0 Z. S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" c$ C7 I, _0 u! u- x! S swarms.buildObjects();8 N N, D& K2 }9 c6 D8 w
swarms.buildActions();
' ?, v$ b4 D- t( G0 s swarms.activateIn(null).run();
& o! ~. c9 E$ u1 r }
9 E: ~9 x6 f l% j7 N4 x" h3 ^
( o" C1 {6 g& Y. X$ z# q/ N) C} |
|