|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 `* f+ P0 V, D( P' S* J
( _+ c+ k& ]4 s) T5 l9 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) \! C. t' A! C( a+ T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 N& A$ k. Z |4 k& Hswarm.SignatureNotFoundException8 p+ Z# e1 v6 t$ ^: C: \
at swarm.Selector.<init>(Selector.java:76)0 K. }' F9 ]" u& e
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& b* {/ W, t/ }# n5 X7 t
at ActionGroupDemo.main(ActionGroupDemo.java:67)) O: E! m; O& K! Q4 K$ t4 b
$ U0 C3 g3 |. U6 D
4 a! j; v/ C9 c
import swarm.objectbase.SwarmImpl;1 h, P# ]6 P3 J- `& H! e. S
import swarm.objectbase.Swarm;$ Y( j" U* x3 ~5 c: K o
import swarm.activity.ScheduleImpl;
8 `$ l' C {$ D( X+ r$ aimport swarm.activity.Activity;$ q S# \+ R" |1 d8 F$ p( R
import swarm.activity.ActionGroupImpl;0 M) G2 M: X* k1 T- {/ m
import swarm.collections.ListImpl;
% ~; @5 f5 [8 Cimport swarm.defobj.Zone;
, t) g1 K. q) x2 O- g8 J- `import swarm.Globals;
' T, A C# m- e' i1 ~$ O% Gimport swarm.Selector;# a( A& u: I1 r6 g3 g/ R
import swarm.activity.ActionGroup;
' L0 g1 n0 M4 s% U& j; q0 s" _class Agent {
& X/ ]4 s$ E: n8 p char id;+ ?$ e3 B% E, X) q; e. a: |8 z# v
" u; x, \9 y6 i1 J8 j; ~( C2 ]
Agent(char id) {9 _# c" x# |5 F! @( b
this.id = id;
% s! e! m- D( y; V6 l O+ V2 S }# q: m4 z5 k0 ~5 z" B
: C2 K; i5 A, t- g, G1 {" R: u1 Q
public void agentStep() {
0 ?1 \$ |- l" j1 X$ S% h6 m$ W System.out.println(id + ":" + Globals.env.getCurrentTime());# W% n( S3 @6 i
}- S9 q- X2 P7 c4 ^' ]
}
# L d) W7 @' m8 A/ W- n
' u! w' L. {4 m7 Epublic class ActionGroupDemo extends SwarmImpl {, b/ C0 N# E. z F2 a
ScheduleImpl schedule;
" t+ U' [; ~: U ActionGroupImpl actionGroup;
; [( g. |0 o: y' l: f( x# ? ListImpl list;
9 w$ P. Z" Q& {( J* N: { char Id = 'a';
+ V. Y" t6 X' y/ _: A! n; ?+ \% i5 p1 E+ }5 h
ActionGroupDemo(Zone aZone) {
; z9 a' K) o( s2 g0 o super(aZone);
1 w3 X. s9 T# t9 ^ list = new ListImpl(aZone);
3 O! j9 g! T# a. d swarmSetp();
# Z8 D9 X- C8 J( E* e1 e& Y actionGroup = new ActionGroupImpl(aZone);) R1 O J9 a- l! P5 c3 p
schedule = new ScheduleImpl(aZone);
+ _; F4 t; g* l2 z2 z! y, E! |$ P( Y try {8 y0 L) z: z/ @* h, m
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 D8 p5 p, s+ O Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ ?* Z' \! |' d b4 C * O+ O3 b' e0 [+ z6 `# J
actionGroup.createActionForEach$message(list, agentSel);
: z: [7 E- S3 s% G/ s3 W actionGroup.createActionTo$message(this, swarmSel);
6 P7 t) L# H$ B: _ schedule.at$createAction(0, actionGroup); I/ \2 j4 ]5 G9 J) e9 ?& W
schedule.at$createAction(1, actionGroup);& Y6 t+ `* O( c; a$ j3 u T
schedule.at$createAction(2, actionGroup);+ |9 M2 L4 B* m$ \' u( ?. }
* c# q: f( y" x# O1 C
} catch (Exception e) {
5 c6 K0 }+ ?# }; U) k" h e.printStackTrace(System.err);3 V0 j) [" s$ `0 S
//System.out.println(e);1 E% p" E9 q9 P6 x
System.exit(1);
2 S! ?, g& t7 T }
2 }" B$ P" Z! z3 V6 ~
! C3 n" U* _5 r' e1 L# ^) y1 q; _
' x% t- u8 v# {& O* _" U }3 S/ X' }8 d6 x. j/ ?
4 @' e. U9 S2 F# ]
private void swarmSetp() {
' Q% x- ?0 D2 O2 U list.addLast(new Agent(Id));
6 w. s' q3 j0 `& w% t Id++; H, J, }$ y- i1 |7 n- N S
}2 ]% @, ~9 I* B# g9 {% A8 ?8 M
2 R* Q% I2 D' i* E) Y
public Activity activateIn(Swarm context) {
, L y$ L% W/ w2 j; K super.activateIn(context);
3 K( u; O9 L3 L; E% M8 _ schedule.activateIn(this);
/ Q% G# Q/ Y7 ~; j) S( p# v return getActivity();
+ V( ]; U/ f* o! o& D6 i( H) p/ ]6 G }
p; v5 p) ?) P% T3 M% z3 M6 h( A: q+ O
( V2 Z0 k7 j; y# Z public static void main(String[] args) {
% r( H. L. R7 q+ S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 Y# y! C& P: n* \8 V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 r) q4 ^. i% {, B; H swarms.buildObjects();9 t9 I6 l# W/ [/ j6 ~
swarms.buildActions();* |0 k8 e9 I5 @0 A/ Z, W
swarms.activateIn(null).run();
+ c( t' u+ D: e( M+ W1 ~" d }' V4 x, w; v% ?. M; V9 h2 f+ H
# `: j+ i t, s8 a- |7 C* c
} |
|