|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( a9 M4 U |, d
) D+ [- H7 z6 [6 } Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. f5 |' N* W6 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 U6 k5 P* ]/ c f8 U1 m" z
swarm.SignatureNotFoundException- e0 A! F% I# P
at swarm.Selector.<init>(Selector.java:76)
0 |' @/ Z9 M. K V/ ^* Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 E! |; `: ~+ E1 q. Y8 B4 O
at ActionGroupDemo.main(ActionGroupDemo.java:67)3 U. J0 T* |) o' F( ]- }9 L
9 a+ \6 \9 O- k. a
3 m' g. x1 K& n5 a/ P8 ], d5 h2 fimport swarm.objectbase.SwarmImpl;
2 q, _/ ~1 Z4 g- f( K1 b6 yimport swarm.objectbase.Swarm;
: J8 i* Q! r7 r9 zimport swarm.activity.ScheduleImpl;' A9 w+ P6 F) e1 e, F8 b
import swarm.activity.Activity;
3 @) T% S+ {3 e* o- T$ ]" _import swarm.activity.ActionGroupImpl;
i9 I1 F. z5 o5 b$ ?) i% r, Kimport swarm.collections.ListImpl; S1 V* ~5 q. Z- q0 s, N
import swarm.defobj.Zone; ( p" Y: w6 N+ x/ W# h6 b `
import swarm.Globals;, ~) N! ?# e% j2 Q# ?6 @
import swarm.Selector;5 o1 Z6 N9 o9 d, U' O! ]
import swarm.activity.ActionGroup; ; `" A. r9 ?8 L$ q8 z! j
class Agent {/ W$ @4 f( r V( U1 `! S0 K
char id;
; u3 t% |) o% s% S
" r& M. u% b' J( E0 U* \ Agent(char id) {
# b& l8 |& s5 `& Z this.id = id;
% P, w; ?- W+ Q$ A7 u: B! N }% a. X) G+ [+ d# n! F% \% m
1 F+ F" H/ U3 j/ p, V public void agentStep() {- E3 V; M4 ^+ c) d
System.out.println(id + ":" + Globals.env.getCurrentTime());: u: Q+ [: a' O& r v4 X( y6 d
} ]! Z4 H' O( K* U% m0 F9 W0 K
}: Y, O) a: K0 q7 L$ w
; u' k; o$ I' A4 O. {6 S4 \0 E; y
public class ActionGroupDemo extends SwarmImpl {
" H; w7 b+ }0 p8 j8 m ScheduleImpl schedule;+ {, b/ o1 N9 g: n7 ]- J
ActionGroupImpl actionGroup;
4 x$ e- H J. [( U1 k: u, t ListImpl list;
0 ^! c$ k3 U8 k6 A/ Z# j char Id = 'a';
. c% l) u6 \7 b- w \0 w) G0 Q# s
9 F5 }2 B8 E4 L0 B/ [ ActionGroupDemo(Zone aZone) {
! V" V* p7 M+ L- Z8 Y super(aZone);
7 u; [' v P# ~5 t( p. C* M q list = new ListImpl(aZone);, s9 z$ j" k% {9 q" p- w) G% K
swarmSetp();+ x- q- B/ o3 ~/ v4 r( O2 N |
actionGroup = new ActionGroupImpl(aZone);$ T0 q# Z" ~) P8 n5 t+ L3 [
schedule = new ScheduleImpl(aZone);4 m; y' L- |- t+ P+ _( }
try {
* p, d& _$ ], `& Q Selector agentSel = new Selector(Agent.class, "agentStep", false);- H2 D! ~' ?. T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ R% A- b& v3 j% r% A# o
5 o; |* U: [+ n6 [; h; Q4 J5 s% { actionGroup.createActionForEach$message(list, agentSel);
- P1 }; m0 ~) R4 O/ R7 o8 \. A- \$ S actionGroup.createActionTo$message(this, swarmSel);
. ]3 x# K% }: K: y0 O7 n( z; U( h! M schedule.at$createAction(0, actionGroup);. }, u5 ~9 M0 v+ N9 v' \( b; T1 n
schedule.at$createAction(1, actionGroup);
* r5 ^9 V! v! a4 j- ^" c schedule.at$createAction(2, actionGroup);
' _2 |. @1 A; z; u1 G7 k6 [: r% _( r% i) b/ D6 A
} catch (Exception e) {% C) O$ ~! c; y) Y, p
e.printStackTrace(System.err);
9 M% M7 x+ `6 s- p //System.out.println(e);
0 i' ^! J1 r' b2 w- \0 y System.exit(1);; Q7 n. V+ |' V" {, c l2 o
}7 l" l) l/ E; Z i; `0 w
' P9 z; B3 m$ E, `. O6 R; |# i: J8 A+ y' S: e
}
, l8 M0 @4 _- j7 }% F* _4 P9 r5 ~0 s' G! @/ ^- Y v u7 X
private void swarmSetp() {
8 H1 C% m1 R! Z' } list.addLast(new Agent(Id));
4 \$ M" E m- L6 R2 K' d0 Z+ l Id++;
3 }5 L, l# X! }* N% P }* k( r/ H% s6 A) h
) y! L% I" V2 F) Z public Activity activateIn(Swarm context) {. M# R. @6 R$ g
super.activateIn(context);
* k7 g9 u) q- \$ D& V5 k schedule.activateIn(this);8 r5 C2 D K6 S0 ~
return getActivity(); K' b3 U8 _" m( B' P; `* i! S& w, a
}
2 t' h7 m2 Q) \8 B1 B+ ]3 i( H% s0 _4 H
public static void main(String[] args) {( z$ @. _$ a. q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' k" d! n: ~% |3 U3 \, q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 E, I! \3 s/ r: [. ]. t
swarms.buildObjects();
5 c' F" O$ |$ D; x+ c g$ |2 K) J swarms.buildActions();* I& }) m# u; z" T* Q0 k1 o
swarms.activateIn(null).run();% ^1 ?' |. R# `5 F
}' p5 b6 ~( B0 |$ n
. j+ B0 ?6 p7 R} |
|