|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! A& g8 Q: \! i+ z9 }
& A& H4 n }. t' ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ A& Y" O1 K# c0 {3 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. w U3 o) P2 P9 F& }% u( q5 D' _
swarm.SignatureNotFoundException
( ^5 `; F3 b' [) ` at swarm.Selector.<init>(Selector.java:76) l8 v) @0 t, @* K% _. k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 w/ k& B& u- S/ {6 A at ActionGroupDemo.main(ActionGroupDemo.java:67)- I& X5 `0 g! z- Z2 B
5 C$ {8 l' s7 u! O% b4 _$ a! }
6 E/ Y& h1 o1 W0 vimport swarm.objectbase.SwarmImpl;9 [" F6 H9 w* c8 c8 d) j9 B
import swarm.objectbase.Swarm;
# c, [2 H3 h# n) H) gimport swarm.activity.ScheduleImpl;
+ u; O: _1 F1 M$ ?) ^import swarm.activity.Activity;- {) n2 q4 R3 |8 k9 l; B& g6 `0 {
import swarm.activity.ActionGroupImpl;
0 g% [% \2 `9 t7 c% ]import swarm.collections.ListImpl;( C8 A/ e- f/ W" [, C6 o( c) s; k
import swarm.defobj.Zone; - x( q1 q3 K7 W% N7 H5 U2 r% u
import swarm.Globals;3 \, b) n# q; r3 ?
import swarm.Selector;
: z2 x7 R6 [8 P' V. pimport swarm.activity.ActionGroup; : S. q2 K V$ n4 j+ m2 p
class Agent {. b9 a7 z5 }5 ]* t5 H8 \
char id;
; g. j' X# j/ W+ V1 V
# A" y; K- h* P8 T) Q' a1 E; ? Agent(char id) {
G" r# b* e6 k; I6 ~& p this.id = id;
- f3 ?, H3 j g6 A4 a9 ? }( t6 \8 ]! e- g* [& F& B
/ v5 v& U& R( d3 ~5 b' l4 j
public void agentStep() {
9 _0 K9 g/ _* S& E System.out.println(id + ":" + Globals.env.getCurrentTime());1 d1 u# B. @! P
}
+ A8 C) [6 o- U$ O( {. {}% p" e! ]: {, e( o7 Y
0 B) V# O( H) j( ^3 f
public class ActionGroupDemo extends SwarmImpl {4 [, K7 d* D8 e( Q
ScheduleImpl schedule;
& s- ] M& ^# `/ q- q. l/ } ActionGroupImpl actionGroup;
% E. ~4 ~) n% d) O ListImpl list;
& V+ `; Y7 W4 f! N5 } char Id = 'a';
* i0 M3 E1 V: L8 N1 B, D& z% M: O, l( ^( V
ActionGroupDemo(Zone aZone) {8 d& @: N1 M6 X4 G& A- N$ Z
super(aZone);' E1 U8 {2 u8 E/ [8 V* ~
list = new ListImpl(aZone);
6 }. @* t/ e% s- Y3 a2 j( J swarmSetp();
/ X; H' R/ F2 L0 A* h9 h actionGroup = new ActionGroupImpl(aZone);" n) Z/ A0 | y
schedule = new ScheduleImpl(aZone);
- u8 E" U1 g( p- {* Y7 m5 ]. D try {- }; O2 C/ q2 `$ L5 q8 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" ~, w$ ?+ S6 C" L2 v Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- V9 _9 J( X4 {) h; }
. n0 M* H: m0 ~, c5 ^: ? actionGroup.createActionForEach$message(list, agentSel);
3 \$ ~% V6 r1 k: X; k actionGroup.createActionTo$message(this, swarmSel);
, @+ `" U2 h9 L! [ schedule.at$createAction(0, actionGroup);5 \9 W: D; C m/ N _; ?. n
schedule.at$createAction(1, actionGroup);, C m/ ]0 O2 ?8 W% S8 k
schedule.at$createAction(2, actionGroup);& F! f2 b/ S5 A ^# c
9 z% l$ {2 J5 n } catch (Exception e) {; |* _9 E' j" G Y2 L
e.printStackTrace(System.err);! w! y$ ~/ s2 L& h
//System.out.println(e);
# V7 ?: B I; f2 ^7 o# b& g System.exit(1);
8 K- w( I2 f" M7 ], {/ l" B }7 |9 t% [. \6 X& i
0 I- m) M7 W* f. R
/ L" h* v- O/ l8 u1 a. ]$ ] }
5 _! |. Z/ H+ j& {4 r5 ]% I5 m
private void swarmSetp() {, W- Z" g/ W' c1 l$ W T( q
list.addLast(new Agent(Id));7 C( g- w2 k9 X2 e! y! I" u
Id++;
0 q( H4 ], |; Z2 a }
0 d1 j/ X6 K3 m9 g( Z; E/ Z5 ~" G5 c& _ A; P' w
public Activity activateIn(Swarm context) {' z/ C( ?+ x9 }; Q8 e' a. R
super.activateIn(context);; z# X+ X9 h& k+ v, {6 H0 m
schedule.activateIn(this);
$ V' [. ]; q/ p% q* R# n r9 D, s return getActivity();
3 V q1 j: O2 K& h/ a7 W }1 |4 s1 J3 H H- ^
! R) N: {! E& ] public static void main(String[] args) {$ c. \: A; q1 m4 ~2 [' o. ^8 S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 m8 S: R+ w+ j2 w( i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, ~9 Q& U- D4 B) [2 v. O0 o' R
swarms.buildObjects();% o2 e& Z ^ F+ A- e* G8 @7 T( l7 h
swarms.buildActions();( J' l K$ l% s1 w, ^
swarms.activateIn(null).run();
0 C" ^7 B/ ]$ l2 J+ D5 r }4 i7 \5 K0 I2 @0 i8 _# X
$ Y; K4 }- J! O$ T} |
|