|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ g* T Q/ M+ v. n; l5 W
+ [4 E1 I; _% v! D3 Z4 U4 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! c8 U! z* c$ ~) b% S! j% r! X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 B+ \' W% z; V! _9 |
swarm.SignatureNotFoundException6 x: W1 p$ `( e4 c7 I
at swarm.Selector.<init>(Selector.java:76)) g' Z0 I& @! C6 R5 O, a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) b" K% n( g- r at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ }! h3 n% I4 r! d
; _2 k* O4 A! c; w: @0 i( W k
; H8 H- [/ X% Q0 Z( d, c7 iimport swarm.objectbase.SwarmImpl;, s9 u$ D: S" P$ R+ ~
import swarm.objectbase.Swarm;# X* E/ r* P# t G- ^+ ^. Z3 u9 y
import swarm.activity.ScheduleImpl;
6 |4 c6 e- U/ S; v, ]5 f$ g* kimport swarm.activity.Activity;: l9 [! W4 r6 V- h; U) Q
import swarm.activity.ActionGroupImpl;# x& H7 X9 d: v) _: A b; }
import swarm.collections.ListImpl;5 u+ Z) D8 }- p; O8 D* m
import swarm.defobj.Zone; {4 K1 k6 L- v; r# Q
import swarm.Globals;
; H d$ O( f2 q, U, L+ Wimport swarm.Selector;: R! V: q9 O) c* h- i( ~$ q% [
import swarm.activity.ActionGroup; ! t0 F6 [. D9 Y2 u8 V1 Z0 ]
class Agent {
* X* c+ n$ o( s# G* l char id;4 d1 ^( E! T: Y( ^% `! H8 L, f
+ `( Y# X$ V& g4 @' e0 C e. W; w8 }
Agent(char id) {' {: W, O' [- S9 J& ]
this.id = id;# [( d& W! _% e
}1 c% W! r: ?% B9 w
5 c; V. N3 ~6 c6 Q# I, Z- L
public void agentStep() {$ l1 B0 a6 r8 C+ P
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 { ~8 k4 G6 ]: y: U' [ }/ q- o2 M4 K M9 L4 ^4 T4 \
}8 l' D7 A( f' ~+ ^- O3 S) G
4 M9 S6 a8 y, Y- f8 I/ l* ?
public class ActionGroupDemo extends SwarmImpl {
* D2 J2 x/ v8 s4 i3 Q. s* W' s ScheduleImpl schedule;
* H* a% P% f) B ActionGroupImpl actionGroup;
8 C9 J" R2 r9 e; O D ListImpl list;
" O5 Y: x$ C, j. I char Id = 'a';' r3 I) I/ ^/ x- M
2 n* J2 l' O- E g! e ActionGroupDemo(Zone aZone) {
2 w* k5 d% D! }5 g, t( e) Y1 l, O super(aZone);. j! ~& j* d& m1 p, |9 e: \" b$ b* e
list = new ListImpl(aZone);
9 J3 C1 s, [1 G2 Y& O0 ~2 f" a4 k swarmSetp();
& T! Y& _6 P+ U/ ?9 m actionGroup = new ActionGroupImpl(aZone);
/ {1 x, X1 i0 [; A2 a6 N schedule = new ScheduleImpl(aZone);
6 I3 D' u F# p8 I3 B H! B# z) O try {
- e& G t4 \# a2 g Selector agentSel = new Selector(Agent.class, "agentStep", false);
, P7 N7 K+ {% T+ P. e Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# x5 X3 W9 o! c+ B0 d2 M9 m
$ O1 S/ ]3 ]0 o7 v, F0 \ actionGroup.createActionForEach$message(list, agentSel);( l' o7 q5 B. N: f
actionGroup.createActionTo$message(this, swarmSel);/ ^+ N) }9 S7 J, ?4 l
schedule.at$createAction(0, actionGroup);: O5 }# J9 a+ [ A) o5 E0 y+ ?
schedule.at$createAction(1, actionGroup);
, c% L9 N5 S! f schedule.at$createAction(2, actionGroup);- [' t* r9 g5 n4 c4 O+ r! u" ^8 @; T
; u7 G3 L" T7 D+ \, N. C& F
} catch (Exception e) {) c2 p. t0 z3 n% M5 R& |
e.printStackTrace(System.err);
8 Y) |% p1 @! u+ ^4 T4 z8 ` //System.out.println(e);
. w0 E9 r1 g7 o' b& e System.exit(1);- ]0 h2 H; |: e& z
}
- i5 w( i3 E' \ E% C( v8 k; X& s F* _
- O8 o8 y! l' O" v
}" X0 H7 I i& ~- c
/ @4 {5 z Z) l4 V private void swarmSetp() {
( r6 `$ q x/ w& z$ J7 i% a list.addLast(new Agent(Id));* {0 I# q: [! J& x& G
Id++;* x4 u( \0 R0 u- f9 J
}" h% X+ K! ?0 G4 N4 ~: U/ l. y# c9 \
; m: S! x5 {& ]" y Y public Activity activateIn(Swarm context) { b( C( w- Z& m& n$ Z# o3 }9 V$ m# q! E
super.activateIn(context);
9 d' P' [2 e5 o: E% k0 R schedule.activateIn(this);
6 _ Q) a# x, o( b return getActivity();) E# S! K6 f) _. v
}
) w: Y( v6 ^2 s$ C. R; k& l
6 N; f; K, U- s5 f8 U: t8 G public static void main(String[] args) {
* U! S+ {5 R9 M6 v" z0 W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 a, ]" p. q& h/ d1 u7 J3 w9 s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 x0 G. H6 _- l" j j' w- i
swarms.buildObjects();
+ ]1 u6 ^% \9 X& ]9 m0 W; ? swarms.buildActions();! N" s3 w* I. X1 @6 z9 G
swarms.activateIn(null).run();: B2 K4 X' J! Z+ p% m! T) |, a
}
+ I$ x- D% Y; P" ?. Q1 G& ?
1 T* ~8 s N" g# j} |
|