|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % z# F& k1 S& m. K7 t2 m
- K$ f% `3 J" A0 c. F+ I& e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 `& N( c$ z6 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. B( O6 J) P( s" [/ R5 u; M r
swarm.SignatureNotFoundException
! Q+ U) S7 o: v$ [6 O9 z: _% }4 | at swarm.Selector.<init>(Selector.java:76)6 Q& l2 ]# Z: ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 V" ^4 ] c! Y, }
at ActionGroupDemo.main(ActionGroupDemo.java:67)) c& B& R0 P. b6 Q+ L0 a0 }
5 m1 u$ ~& W! A ~# D4 i( G- _/ O+ T) n$ v
import swarm.objectbase.SwarmImpl;2 i+ T( _+ J; ?9 [, @# C) y
import swarm.objectbase.Swarm;" \" Q- I d8 j( c0 x
import swarm.activity.ScheduleImpl;
) t- u7 S9 N! `3 \. M- g Ximport swarm.activity.Activity;7 h8 d/ e7 H4 H: W, i" I
import swarm.activity.ActionGroupImpl;$ Y$ R6 ]6 y: g/ O) ?, ~5 s2 p
import swarm.collections.ListImpl;
% r1 D5 W% x6 Z. M7 W( Rimport swarm.defobj.Zone; ' r; p Y9 X- n ]7 F/ V1 r
import swarm.Globals;: z3 P! R7 `5 }+ S/ E, l" |- x
import swarm.Selector;
2 |/ e" O4 r. `3 \' c% f, g! oimport swarm.activity.ActionGroup; ( j" R) E% z& Y
class Agent {
1 Q: c! O* f4 k; G' R, Z+ e char id;+ f/ a/ u8 v, @7 q9 i( s
g1 e% R* {0 C7 n Agent(char id) {
* z" L- g; ]3 G* Q; \) \, h this.id = id;9 e* ^8 _. r3 T% q' a
}
7 N! y: _5 n9 E' Q. ^4 E% Z9 P/ g/ c' v3 |% d1 y& D0 W5 J
public void agentStep() {
& Q) j+ D& e: c System.out.println(id + ":" + Globals.env.getCurrentTime());5 Q8 q+ j" J F$ K) Q' a* k6 L
}! l' V1 Z+ e9 A" z- u
}
7 s/ b$ c& U: s' y u
3 C3 [/ l% o( kpublic class ActionGroupDemo extends SwarmImpl {) h3 P# R0 @# F7 Z" J
ScheduleImpl schedule;
9 ^% Z6 t/ h$ v: @ ActionGroupImpl actionGroup;
& W7 A8 p8 F$ Y( @) I/ H/ f ListImpl list;
0 R/ b& v# C. @ x4 V1 |+ L6 a7 t P char Id = 'a';7 S! @. h& | T5 i% Y; U+ H, k; i
# L7 \, I5 I: K6 h6 z: z1 Z/ L ActionGroupDemo(Zone aZone) {
) ]9 O& d! X4 h) I* N super(aZone);/ O0 b( k8 v1 f6 g
list = new ListImpl(aZone);
4 l* a; F; Q( Y" b# I' | swarmSetp();
4 H9 ^6 g( u. [% k0 \* A% @ actionGroup = new ActionGroupImpl(aZone);
4 b. R2 A% K' C( k1 L4 I& O schedule = new ScheduleImpl(aZone);
4 @; S7 v; o8 [* B7 v% S, P" n$ @ try { _! p( Z( l# L* n' ]' L. U; }7 Z( l
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 y+ n$ n- d0 B: r/ q& h* Q. x9 e: { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* F8 ~* M: }+ a+ }+ j8 a" o6 P2 ] 7 Y, t# b' ]: |& W+ j( @
actionGroup.createActionForEach$message(list, agentSel);1 n' \1 h/ O% C8 i" S- F3 b
actionGroup.createActionTo$message(this, swarmSel);+ r$ C# ]; O8 Y; t" R R
schedule.at$createAction(0, actionGroup); e+ y2 D+ M) T( o% c7 a: g
schedule.at$createAction(1, actionGroup);
+ o O& t- j+ p1 k schedule.at$createAction(2, actionGroup);$ [: t/ V' I( L5 J
+ `: q! e6 G: J- c" t1 L
} catch (Exception e) {
7 Y/ b! i: [8 e e.printStackTrace(System.err);
- u; t) d: h7 H //System.out.println(e);- E* C8 ?) }% \8 J1 Y9 H* U
System.exit(1);: M: R0 }: n$ d& w7 S
}
3 G8 v# H8 }; x, t/ \' ]1 r7 }( f9 i# r6 I9 C8 k1 o2 G
4 f7 n; W0 {+ K8 V/ ]+ H }4 T$ {+ v0 B; f7 ~3 K" I( ^( D
' {" H: z* f& n0 q/ i5 o. ?
private void swarmSetp() {
5 Z% R6 q+ w! a: Z$ X list.addLast(new Agent(Id));1 t* @4 U7 F" z" R! V
Id++;
8 b* W4 a# f( S% h6 ? }
. s* M, ^+ @, a0 b/ d' l+ q
! b3 M% m! q- v! K' ^! K. g: D public Activity activateIn(Swarm context) {$ ~) M `4 V5 b8 K% {
super.activateIn(context);
( p) T c; u" a6 A6 s7 v schedule.activateIn(this);: Z9 \* S7 k1 d- {4 O+ n: _
return getActivity();: D& {. E4 H7 J0 z
}
1 D. t1 v2 [! T+ @! ^' K* O5 ]( @3 R: Q" \+ O
public static void main(String[] args) {
8 c5 `9 a2 w+ O; D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 I c6 o9 R. R
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* A, B' t* }- J swarms.buildObjects();
9 _8 x* y% |) L5 Y) X, j% y) J) b9 { swarms.buildActions();
2 @. g1 X, a" Q9 o1 z$ y swarms.activateIn(null).run();% {" Z' q; A% X/ J
}# B% `1 L$ d. J8 l
- _- {' n$ o( g. v+ C/ E8 t} |
|