|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 @+ m( l! d4 [! q' L
! u1 i$ p1 x" r& K4 L本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) u3 i% {( ~9 c( \0 a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& G% ]; C' Z v3 J6 z0 Cswarm.SignatureNotFoundException/ ~( d! o2 ~$ f( A$ o& L' h9 A3 U$ [
at swarm.Selector.<init>(Selector.java:76)
2 s: A4 W' Z5 P. R4 ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 I" }; z6 k7 m- X D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ b# J% v. J, `3 z( c7 L' b/ v2 Y1 {$ r3 N, Q* P
) r; L' ]. |2 o- b: Dimport swarm.objectbase.SwarmImpl;
- k/ U3 O! S P6 Jimport swarm.objectbase.Swarm;. e% E) Y* w( Q! B4 [% w% @8 @( I
import swarm.activity.ScheduleImpl;! O5 `$ {+ f" l: T: O
import swarm.activity.Activity;
* @* o$ U2 B C6 B4 @import swarm.activity.ActionGroupImpl;
7 l( U3 q# @" e$ ?' ^! L: [import swarm.collections.ListImpl;$ V) V6 F. g6 M. {, P! R# F: o& |
import swarm.defobj.Zone;
+ y/ {0 Z1 P( ]% Simport swarm.Globals;
( d2 M/ c2 t( g- M, Y6 gimport swarm.Selector;( _1 K* S5 W9 l: f7 ~0 b
import swarm.activity.ActionGroup; 2 K$ W; X7 g8 o1 a2 w
class Agent {
6 k! V( H) c7 V8 z. W char id;* }" Y( S( y% _2 o7 W3 [
8 z4 L) J9 p* u# {2 \( \% ?$ w: v* A Agent(char id) {$ T( D* `$ @" _2 _* k$ T0 K$ C
this.id = id;
/ M( T k- b- z. X) X3 B2 [ }
1 j+ @# ~9 s! I; P6 b0 Q& I# o# l* t4 n5 B( P& F6 G
public void agentStep() {" p; o3 K! N1 y9 w% T, K! k& _
System.out.println(id + ":" + Globals.env.getCurrentTime());# a1 i1 {% _- n6 P( w0 v0 `" C& f
}/ t. ^; L! N: T; y/ N) Q/ K
}
) Z; ?0 N+ W2 D( S& b
; l5 ~! K1 k# {6 k5 Tpublic class ActionGroupDemo extends SwarmImpl {
9 |0 q- b9 Y3 W: k* R- x. m ScheduleImpl schedule;1 w2 f$ ^2 B/ q; N3 o7 R! |
ActionGroupImpl actionGroup;6 t$ H' U* _) J3 }5 Q
ListImpl list;5 y1 e; `' f% c- w) q
char Id = 'a';
8 D$ D' X8 q4 u! d, _. |1 `- m- ~ x1 Q& p {
ActionGroupDemo(Zone aZone) {# X+ v' m( e7 D/ `" ~! n
super(aZone);/ |1 ?$ ] Q" D# H( @
list = new ListImpl(aZone);
6 y2 x9 f5 H1 q5 V7 \' l# y swarmSetp();3 U, i, R5 b3 p0 A3 b
actionGroup = new ActionGroupImpl(aZone);
( z2 O7 U) O P7 k/ Q; E6 J3 o6 V/ ` schedule = new ScheduleImpl(aZone);$ J2 `9 o+ F8 z2 Z0 z! P
try {/ p$ l& k; {. {
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ S! {( `+ R- x$ a7 A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 I* Z' r& K. z; ]5 O9 A! a2 e
' \* w; E# o# f actionGroup.createActionForEach$message(list, agentSel);. T0 j" g. ]% I" p+ D
actionGroup.createActionTo$message(this, swarmSel);# c9 B( }, a9 w& S2 o! s# v
schedule.at$createAction(0, actionGroup);4 L+ Z H6 y3 `9 P
schedule.at$createAction(1, actionGroup);
& v5 t5 A u! \ y% F: U* U' N, E schedule.at$createAction(2, actionGroup);
$ ^+ X& z# A! @5 D+ _ N+ a1 l" ^% s2 {7 \% ~1 x; p
} catch (Exception e) {% N, G M/ B6 z9 s
e.printStackTrace(System.err);
/ w% D, ]. s( ?6 Q9 i c. K //System.out.println(e);
_+ G' s5 G& ^* m8 q6 a; O System.exit(1);1 P$ f( s; L% ?3 @! N
}. n/ T. N R5 N$ t0 \
) B9 j! v$ C1 ] m0 F; f1 Z
7 H0 N. k4 }3 O+ G6 q( `: f, A
}
* N- f! ]3 w) g
8 y7 x9 ^% c4 C8 d- ` private void swarmSetp() {$ P& t, [( h( v* F/ h+ {
list.addLast(new Agent(Id));
! |; M7 j, Q, C Id++;
% a `( ~+ a# h' L& T }; F) B5 Z' ~# H: C" g0 T
M8 J3 @+ `3 y( i5 u5 ^6 ^ public Activity activateIn(Swarm context) {' }6 S/ [- v7 `+ `& x" F
super.activateIn(context);. N: G7 r( `/ c! j! x5 ]% i7 Q r- r
schedule.activateIn(this);
j! P" c; ?9 h( m# J- d4 ?2 q return getActivity();
) M a a$ f; }9 K1 ], ~; ^ }
1 d/ `, g6 r1 x8 D+ q% P8 N# ?, E1 |# t; G' L
public static void main(String[] args) {+ r% ^ O9 b5 N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( ?7 z$ e! i$ {9 V' O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* q& q, Q# o1 T Q9 \/ J } U
swarms.buildObjects();4 Y; F- ]7 X- V ?" \5 M! ]
swarms.buildActions();
; c: F2 u/ |! U swarms.activateIn(null).run();
2 ^0 Y# z z5 Y }; d. x+ x3 P+ E
1 a2 x4 R! c9 ]( }) k} |
|