|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : a Y/ i! t/ D, j1 U$ w
7 r) _0 c3 @$ l4 f9 C. D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- z' z; G0 Z: k S$ K6 A! O Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( E/ B# W: d8 m) ~0 [
swarm.SignatureNotFoundException
9 \# {- D4 v* ?7 _9 j at swarm.Selector.<init>(Selector.java:76)/ I* `0 N" T% T8 c
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# _% y8 h2 @5 z& z at ActionGroupDemo.main(ActionGroupDemo.java:67)2 b& t% h3 j7 c) B+ F& t
# X2 V- R7 N- o
5 H; t$ ^7 ^! ?9 t% g% oimport swarm.objectbase.SwarmImpl;. H ^) h( T- t. _1 R2 H7 ~7 p- e
import swarm.objectbase.Swarm;
7 _: j1 Y7 A6 p& v1 e* U0 T1 uimport swarm.activity.ScheduleImpl;
& F) b% y% w" ]7 C! f9 zimport swarm.activity.Activity;. d; J" v" k/ \" E3 _ ]6 L1 p
import swarm.activity.ActionGroupImpl;
. y- k/ I3 l% H) m. z: f4 Yimport swarm.collections.ListImpl;9 ]0 G/ a# u: G
import swarm.defobj.Zone; 6 Y" Q1 G6 g7 a$ D
import swarm.Globals;
! s6 B: C9 i) V% Y/ B" i- A" Bimport swarm.Selector;% j' T( L: K+ ~
import swarm.activity.ActionGroup;
6 N& k% M. d: n8 h+ wclass Agent {4 x$ R4 s/ U# ^5 Y9 R
char id;
1 @3 U' h- s/ i/ L0 g: A/ G& z3 u8 S" T/ S3 j
Agent(char id) {8 Z; Z$ ]) x, H5 ~6 I) ^
this.id = id;
" n- c X" u" U' ~ }
$ S. U E5 @; _: p% _+ Z9 I$ b e+ Z1 e! q; [
public void agentStep() {
' R, Z# ~0 q1 \) r6 e8 M System.out.println(id + ":" + Globals.env.getCurrentTime());7 c' f9 i9 O0 K
}9 z" e1 r @+ x7 H0 o& B+ e
}
/ p1 g5 i) [4 {; _+ u7 b6 w
' P6 O1 s& Q& T4 C9 K# `; Rpublic class ActionGroupDemo extends SwarmImpl {% g" c3 B/ `$ {2 G) G7 `; r7 H
ScheduleImpl schedule;0 h: E; i) D% w8 O' c8 v9 V
ActionGroupImpl actionGroup; y3 Z0 }5 ]: K. n8 c% F: a
ListImpl list;
' D( }2 |5 h/ I4 i9 D- |; E char Id = 'a';
0 e: O. t/ ^! F2 A$ F& \ ~! P7 Z2 u) [5 X% p$ p8 ]+ S4 P6 A
ActionGroupDemo(Zone aZone) {
/ Y4 e# S% @3 q/ u0 S8 n3 t" [+ H$ q super(aZone);
6 [8 u& O3 h2 }: f: e5 f. a/ E' T( R list = new ListImpl(aZone);: d; h# S5 B) j! s! s, C
swarmSetp();
2 P: ~; V7 i9 j5 X+ N K a/ m actionGroup = new ActionGroupImpl(aZone);( T) t. U/ F- J# }/ R/ H
schedule = new ScheduleImpl(aZone);
# L$ @/ r# N V* w5 [! U; f$ F7 L try {
+ D g8 Q4 c2 O) ^2 r/ i% q8 K3 t Selector agentSel = new Selector(Agent.class, "agentStep", false);
E9 r9 S9 m% Y3 g) Q3 z6 d/ R Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 o! y7 M6 y( @/ f
7 Y7 M( _7 `! @2 D3 S
actionGroup.createActionForEach$message(list, agentSel);' K, f5 s' F& s0 e* i
actionGroup.createActionTo$message(this, swarmSel);
; n8 C+ J+ M9 W( W schedule.at$createAction(0, actionGroup);
% L) f( |7 l0 k) e6 V" ~ schedule.at$createAction(1, actionGroup);8 L% ~" T, z. d! e) D% _6 `
schedule.at$createAction(2, actionGroup);) t- e% X( x+ z, e: X
% F4 V/ |7 |3 @8 m) D } catch (Exception e) {
3 L% ]' x5 U( ?+ H3 k e.printStackTrace(System.err);
6 H; |/ s# m- R9 g //System.out.println(e);) A w$ e1 R! _+ X
System.exit(1);
8 u! R2 B+ d! Y; C. L; D/ X6 T }5 D$ P8 J5 f& s. f$ {; P
9 ~# P7 n! B+ \/ e, G7 a; L+ Z8 B G, g) C: W, z( G% i: P! v
}" d% I m1 l b- [" w/ T7 E: w+ e; R e
* ?7 e6 q: h) y! e5 ?/ X private void swarmSetp() {
/ C8 `$ G3 F C7 v+ f list.addLast(new Agent(Id));# `3 `! v! n4 c) S" }# E! Y
Id++;1 D% d5 E- y/ ^
}
# I" ^9 |# Z8 K% c/ W
8 t1 K' _% K1 {1 A public Activity activateIn(Swarm context) {+ G/ v$ p' O0 E/ \/ P' n: U" K8 i
super.activateIn(context);
1 b$ ~* l2 h" {+ O% u8 v schedule.activateIn(this);
( _: z, q, U# D5 b Z4 @0 r& u return getActivity();
6 p( ^/ Q- t" H7 F" j: j( G+ h }
! L6 |; s1 h" q; B% x: k0 j$ F5 R- {# j
public static void main(String[] args) {9 H1 b$ I$ @$ K* k0 m, @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 j- r+ r0 |0 O& ^/ p, v! g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! m9 o, O3 P4 B+ g7 ^! ?- I& a swarms.buildObjects();& U$ S. J, _, f4 @. m# Z& j, }9 L
swarms.buildActions();; ?) D. o+ \( f& f; ]1 H
swarms.activateIn(null).run();$ Z5 `6 i8 l; D) C; C/ _4 y8 M: Q! `
}+ V. J7 P2 v' P& {1 A/ J- T
: x/ X4 E$ v7 ]% j" M3 a9 H0 C} |
|