|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; c7 A0 {; p( z" h1 A6 [3 J: z/ K5 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ L; N+ N4 k9 G9 u" e! v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 Z* b& }; o. I V5 Q
swarm.SignatureNotFoundException% U6 }! m' D% J( f6 \- r
at swarm.Selector.<init>(Selector.java:76)
7 B3 M) }: F. x$ X# z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 c0 l3 c1 _% F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ Z4 m4 q; l H! e2 C
o# U. I3 x+ c' D
5 x7 h* b3 e" J) H) Gimport swarm.objectbase.SwarmImpl;/ }9 h' s( {; Z
import swarm.objectbase.Swarm;
& \- g: o; O! q8 V7 Dimport swarm.activity.ScheduleImpl;: i" ^9 h) ` W! J$ G
import swarm.activity.Activity;
4 `- y# }6 C! O7 }% }import swarm.activity.ActionGroupImpl;& m u# C" A/ L4 N- @ Z; g: P
import swarm.collections.ListImpl;; Y* k0 `) w' z5 K" j
import swarm.defobj.Zone;
, H6 H& ~! a: B6 wimport swarm.Globals;* m1 D% _ m4 j" \: E7 Y
import swarm.Selector;
# A1 |: u' R) }! N9 e3 I2 `import swarm.activity.ActionGroup; ) _( p; T* p/ E7 ]8 X. \
class Agent {
2 w, L ]) q2 \5 f0 a% k+ P. E2 \ char id; q! [4 R' F' R$ N: x) G3 b+ o
8 k5 \$ A Q. Y( L& ]$ v( c& w7 V
Agent(char id) {) K! `7 t4 u7 z" d' Y: \
this.id = id;$ k) K2 \1 ?: k R' R% x
}
1 P' d9 ^. S4 C7 {' K/ ?2 z# Z0 A
6 [+ A1 r/ H0 N1 C$ \ public void agentStep() {2 J$ l6 O! x/ b* k! Y" b- O
System.out.println(id + ":" + Globals.env.getCurrentTime());
) ^/ w5 _) x+ l }
! x- x$ u. L) ?0 D. A+ O4 R6 Q}
( S5 q4 q6 Q9 l, V2 }+ N Y* A" u# [$ ^ r- e3 a, C" g
public class ActionGroupDemo extends SwarmImpl {* i0 q. ~8 W( y. z
ScheduleImpl schedule;
: F; I& L9 Y% F# a4 l& Q ActionGroupImpl actionGroup;
9 G8 ~' D# ~" Z ListImpl list;
% o' o( [) Z& g( e9 c; Q char Id = 'a';
; y. ?7 c- R1 j1 d, A( y2 ]
& `4 o* Q& d0 n1 z2 I$ m* d3 B ActionGroupDemo(Zone aZone) {
2 F$ \9 U- l" N6 I3 m9 T+ n( J: q super(aZone);9 H1 R+ P% W' n- B; }5 c4 W1 {
list = new ListImpl(aZone);& F7 A3 x; V# R1 g
swarmSetp();
/ R% @ l% L, X7 [8 }$ w( z actionGroup = new ActionGroupImpl(aZone);% Z) L7 I1 L8 x
schedule = new ScheduleImpl(aZone);8 _. j$ |* N. o. Q* z* J
try {+ P2 |# ~/ Y* h# o( r
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 U# P& Y8 B' [* r0 J( w9 ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- M2 i. ^+ c/ n1 Y6 C
( I3 u. ^" a$ b j1 |* A
actionGroup.createActionForEach$message(list, agentSel);/ v( r4 r) X ~: K
actionGroup.createActionTo$message(this, swarmSel);; Z8 Q4 g- S% f' B) f# O5 C S& |
schedule.at$createAction(0, actionGroup);
! Z: R% j, {, K& }) }/ I schedule.at$createAction(1, actionGroup);
, c$ T7 Z0 R. u/ B$ v4 x/ Q, t0 \5 f schedule.at$createAction(2, actionGroup);/ Y' x3 n! U' c" ?- r/ t
% Z& R' ?# A E7 [1 ]- F
} catch (Exception e) {. U2 A8 H3 J, c( v
e.printStackTrace(System.err);
* Q. N8 S7 G; {- F9 H //System.out.println(e);
4 Q, W0 H; x z! U8 b System.exit(1);) F# l! [+ c& Y
}
$ O, n2 I( F+ I$ }, h
# r4 u8 [% g8 _ v4 s3 q' J8 R4 j8 ?0 u4 q9 S$ |1 Y3 c) ?1 c
}, C- R& S% B+ K% k; O( l& v
- ^. {( v2 {; A' R+ l- k private void swarmSetp() {
3 ^+ ^4 F* o1 g1 i! S8 e& A list.addLast(new Agent(Id)); k, ?/ }. B6 @ z$ m
Id++;6 }& c k& H2 H. `$ `. ]
}
, N: |$ J+ x/ k* d7 B- m7 a
3 g7 ^# l/ Y' r3 X* u public Activity activateIn(Swarm context) {
' R9 g! o" P- E9 Y super.activateIn(context);& F2 z3 q1 I' l+ G( `) u" E
schedule.activateIn(this);
6 W' i6 T7 i; R" h( ~ return getActivity();- M4 R) {. ^- Y8 V( x
}; F- y) a' r2 g* @/ I! P" h
3 _0 H* x! l+ h+ \
public static void main(String[] args) {
/ w; G- I$ o, _ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 z- ~2 x0 a# O' B' G5 s
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 ^# u0 y+ b1 Y3 @+ \
swarms.buildObjects();2 G% i) h* e( o1 b
swarms.buildActions();
! I! D0 W' a& A swarms.activateIn(null).run();
" K6 l% F6 _8 D* t! y- w }
) M6 b. j* V* s: p& z" R3 J
2 B; q2 g o9 Z0 W* P9 K0 y} |
|