|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " j6 c: I" I8 m @
* C& C& I: d- e9 Q2 W# E3 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: S& }1 D. q2 W6 I. S' e& {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' K( D9 a; Y1 V' V1 y8 S8 J
swarm.SignatureNotFoundException
- A# o1 u! A, r+ a5 _ at swarm.Selector.<init>(Selector.java:76)
2 ~2 p+ K) d' ]# e7 a9 D6 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 \! {4 E, q6 x: x3 I; {3 H* B at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ V* d: B# C# Z
& [! a" C2 L5 T- Q
/ P. L) ]& l6 Y. r- E4 Jimport swarm.objectbase.SwarmImpl;& O, q7 m7 b0 T5 _4 M. b
import swarm.objectbase.Swarm; b) l. R, H2 K/ n$ T+ W
import swarm.activity.ScheduleImpl;7 U; C! U) S5 u* }
import swarm.activity.Activity;
- y. [' E O. V$ o# ^: r9 aimport swarm.activity.ActionGroupImpl;
" U# ]) T5 {) }import swarm.collections.ListImpl;0 Y0 Z: d. Z) j9 B
import swarm.defobj.Zone; 2 }( n; y; @/ L# I
import swarm.Globals;
+ k: k+ ~! C6 B' ?import swarm.Selector;' A$ O7 T3 M/ c, D8 m6 ?3 X; U
import swarm.activity.ActionGroup;
' \6 l& d4 T/ rclass Agent {1 I; G: ? t$ r. a) d/ l' l5 v. C
char id;
" l( v7 B P# C, G, Y/ c& m: w2 S$ U* o" o
Agent(char id) {! j0 G" P7 v, C9 a% K+ Z
this.id = id;
1 b% Y1 ~% n @* _' e }. h" }; \& t% i
2 H, `+ [5 B6 B1 W6 E; G }9 F8 [ public void agentStep() {
7 @+ o1 k( t( s. p) y8 ] System.out.println(id + ":" + Globals.env.getCurrentTime());! {# J2 }4 J" B. s: O
}& O, Y4 k* [4 @. T
}" v7 k$ C1 B3 v# @/ h0 e8 L4 ?) K
`' _# {9 j0 y4 ypublic class ActionGroupDemo extends SwarmImpl {
q T- d0 L4 q7 \' G ScheduleImpl schedule;0 l! @& Q; @$ F H4 G# v
ActionGroupImpl actionGroup;
2 V9 `2 G+ \2 C: Q# a ListImpl list;' A. X# O4 T& {4 p- N. S
char Id = 'a';
( T$ r" I" c, I5 O
2 i; Z# }( Z1 @ h2 G- U ActionGroupDemo(Zone aZone) {
1 p2 G: S, X* [1 M" ^6 g super(aZone);
) E2 j# g- q s: `+ d list = new ListImpl(aZone);( c9 C. H3 O# Q, B1 i- _
swarmSetp();; D) v. ` ?, S, ~' K2 F. `6 B2 B
actionGroup = new ActionGroupImpl(aZone);
; g% X. @8 P$ q$ L0 i8 w" E0 C schedule = new ScheduleImpl(aZone);
0 v9 T0 z9 ^" }, U: f try {8 }, B- M! Y# Y5 H* L
Selector agentSel = new Selector(Agent.class, "agentStep", false);: p+ |# O4 Y$ C5 m7 }- J9 C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! o/ V% h5 y1 k8 x- X- C
, q# D# D3 ]2 X: n
actionGroup.createActionForEach$message(list, agentSel);+ h3 H* Z9 G9 e1 {; d
actionGroup.createActionTo$message(this, swarmSel);
0 O. }' a! m: j) Z9 E schedule.at$createAction(0, actionGroup);
! ~/ A) P/ p' P' A, a( A1 t! z( x schedule.at$createAction(1, actionGroup);
2 l3 z( p& t, c schedule.at$createAction(2, actionGroup);
0 V1 O' e/ p; _0 h" r- _0 [! |8 i. F) D$ W
} catch (Exception e) {
9 ~6 }/ L. z1 L% U# z G0 @. q e.printStackTrace(System.err);
, } z+ @: A: c% r% h$ @ //System.out.println(e);
6 ~0 W7 I3 c" @, } System.exit(1);
9 j- u q7 N( B% v }
, p$ V5 r' N6 X7 Z2 D! J2 _
! J; A/ `+ T6 j+ T% Z' M+ H3 H$ u2 \8 x! }/ s2 W
}+ X5 Q+ d; w" x' s* d
" Y+ C, J& z4 H. ^; P/ n) `) f private void swarmSetp() {
% E, c. F6 v: R4 _- j- y3 W list.addLast(new Agent(Id));
1 r! H- ~, |0 G0 r' j# q1 q5 J: G Id++;
- w* D/ Y u5 f r0 c }
i W+ w* t! B! \% F8 ]" s0 I5 Y( N
public Activity activateIn(Swarm context) {
$ W. I, `( L- F9 l- _& f super.activateIn(context);
! d5 W, I' @$ x schedule.activateIn(this);
7 l/ p5 ^ K6 J" o% i/ e! S return getActivity();( X# ^. m& n: u1 y
}8 A' n: g# w' r, o. e9 ]& x. O
3 r3 J+ N7 i9 |2 q0 V$ q9 q" p! z2 H
public static void main(String[] args) {5 k" u( J0 z7 d: l2 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: k* p1 s# I' k4 ?% ^) v3 O* @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ Y' p- b9 B9 S2 C7 p: q1 z swarms.buildObjects();: K# i3 ]/ b9 Q N
swarms.buildActions();
: {; b0 g; ?: _9 ^ swarms.activateIn(null).run();
: G4 D9 F9 r5 S; X8 ?$ |# w }
/ o/ D/ ?* {9 M
/ N, ?9 M* `: {) X9 ^8 }} |
|