|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + E) P' i D! G" f0 }. ^* P8 y# N
% Z: F' @# W2 L, Q# g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; ]$ U0 B5 K2 @+ d F/ e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* u9 G; p1 F% S+ u% }
swarm.SignatureNotFoundException0 s; v+ ]& X% Q- @* I+ a4 `
at swarm.Selector.<init>(Selector.java:76)) r: E' h1 B7 ?$ W, Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" M; Y9 h3 u2 i
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 G* a9 {2 h5 Z: U* _0 @! R1 q+ _9 u4 M0 \0 o
0 e# Z- N% a/ F# M8 L
import swarm.objectbase.SwarmImpl;
2 L7 `3 { G& K# [- [; N" rimport swarm.objectbase.Swarm;8 [. w) V8 L. J6 L- K9 y
import swarm.activity.ScheduleImpl;. D3 A8 k4 |, d2 D
import swarm.activity.Activity;
$ B/ w1 X2 T( v( `& W0 A" \+ uimport swarm.activity.ActionGroupImpl;' ~1 r9 x5 P3 ^3 G. E1 [ M$ k
import swarm.collections.ListImpl;
U; j+ P! B5 J' ~8 Y4 |import swarm.defobj.Zone;
7 s$ n% Q" L/ o$ K8 [& y6 `import swarm.Globals;: u7 f8 d' ?# p8 \3 E
import swarm.Selector;* p4 d, A5 [( m
import swarm.activity.ActionGroup;
+ q& i/ }5 f! \* t# Q) Iclass Agent {
9 f1 ^% p* q8 ?" u2 T! P$ G char id;
/ i; t* ?& v) _4 h! i$ [2 J5 d
+ ~% Q8 p6 l1 M# |/ m* j: t* G! E Agent(char id) {
- T) G. H/ a3 Y. i' N! {" ~) J this.id = id;; x( ^2 K0 k* D( Q4 F9 `6 V( V
}
# f( I+ j2 k$ }; N9 {3 J, Y
8 R% z7 l* x- F public void agentStep() {
9 [! m! _3 G0 m3 t6 p System.out.println(id + ":" + Globals.env.getCurrentTime());
6 n3 k0 ~0 T# U) _$ e, D# f }
! A" r, Y8 [9 ^4 w+ G) N( x0 @! G}
$ C, R* }% t& I5 Q; B* x4 k' U. _
1 U& u7 C$ c* I r- Zpublic class ActionGroupDemo extends SwarmImpl {
' X) d# N; U7 k7 C8 R: M& { ScheduleImpl schedule;1 e" C7 \% n3 @7 `
ActionGroupImpl actionGroup;
5 B. n+ M% M0 p: |. J' A1 y ListImpl list;# P9 M) ^3 Q. u* L6 \
char Id = 'a';
$ g4 \/ \% \2 K8 Q# i% D, b, h' x/ b7 q' k4 a- X4 Q
ActionGroupDemo(Zone aZone) {7 F0 \/ I, \$ ?
super(aZone);8 f+ o w$ w9 e) Z! s2 x
list = new ListImpl(aZone);! E6 |' J+ U, [4 c8 J+ N! ~9 L6 ?
swarmSetp();+ x; ^. _+ H8 ~9 R
actionGroup = new ActionGroupImpl(aZone);
. Q0 E* f0 E/ L9 s9 ?5 { schedule = new ScheduleImpl(aZone);
* q7 u; a4 x3 B9 v try {
# @1 q& v' Y: `$ A0 _# z Selector agentSel = new Selector(Agent.class, "agentStep", false);
* E7 w0 R- g s6 C, ?9 X0 ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% ]) s [% ?9 O6 L3 R, s, L/ l
* w1 j* ?- s* J: } actionGroup.createActionForEach$message(list, agentSel);& | l8 N+ J2 h3 J
actionGroup.createActionTo$message(this, swarmSel);
$ N" D- X% G- f5 j' ^ schedule.at$createAction(0, actionGroup);
! G0 O! I" M% N schedule.at$createAction(1, actionGroup);
% B' u" a2 X3 r; z1 E schedule.at$createAction(2, actionGroup);
z/ o' o9 k3 i" p3 m% J: b2 r: m) P
} catch (Exception e) {
" E! B7 D4 K1 _/ S e.printStackTrace(System.err);5 }8 y: y3 ^( Y+ c+ f: u0 r
//System.out.println(e);0 k/ _3 R* m% |( {. C0 f
System.exit(1);
2 E) G- Y' ~( Y- I8 @" A }
$ Y) t+ X5 s- V% j( A3 U1 L8 d
; S* ], f, ^: `8 z! p' ^" @0 |4 L7 u0 M
}' v) ^, Y$ Y: ?' V4 w
3 f8 [9 e8 C6 g. L+ N$ j6 b" g3 R3 Q
private void swarmSetp() {
+ T$ Z2 R; C* V$ ~ list.addLast(new Agent(Id));
% ?: ` u' a N1 f Id++;
8 x! n$ q- w# m( F }& V( e, Z# K* v# H+ K, M
0 y7 m# M8 [# |7 z' u1 T
public Activity activateIn(Swarm context) {4 H5 T& q2 A* G, p$ ]* A( M0 V
super.activateIn(context);
! u7 J- t& ]/ S6 y3 p, O+ k schedule.activateIn(this);
8 G0 `+ t% d0 }( z1 o ?+ O return getActivity();
0 U) d0 _% T* a" }! Z }
$ V9 o+ v1 F1 O
, W0 B9 O1 Z" t W% V( D2 S% H public static void main(String[] args) {, y! M8 w" W+ s) _- m0 a5 L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 h- g0 C+ M" u e4 a! \- D6 k$ w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. q0 j2 A5 p& W& ^) K- N& b' C2 [
swarms.buildObjects();
: E! p+ S8 W \% @" ^7 Y$ k- z swarms.buildActions();! [. U2 }, N" g
swarms.activateIn(null).run();; }& a* [/ B+ z% p$ `' O
}7 ^% f' E. ?2 G0 c* S# [: R, k( g3 D
: _, g: K9 i1 b( S; q" Z6 M
} |
|