|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# z4 P9 l3 j) _0 u- |6 S% b* m) ]
: I3 G! Y J6 M6 ^5 v. `: o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) Y) V0 ?' B" C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 c$ Q! i5 G7 } s
swarm.SignatureNotFoundException
1 }' z5 L q' Q+ ~. { at swarm.Selector.<init>(Selector.java:76)
5 j0 ^# S. D- p# L3 Y% j- ]: ]* ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 K7 ]: n; E& ?- n+ N2 j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 f4 w4 H9 W" f7 g! q7 B0 ?7 b, ?7 V1 ?; L! M5 d
$ K1 r3 ~5 E# } x8 L: }1 ]& rimport swarm.objectbase.SwarmImpl;
1 K$ u* q- v6 D( u. Iimport swarm.objectbase.Swarm;
6 K3 o# Z: i3 G7 r4 `import swarm.activity.ScheduleImpl;
3 g( f7 z3 B* M5 c6 @1 o ximport swarm.activity.Activity;
6 I" e" G" J& Uimport swarm.activity.ActionGroupImpl;
3 V: f4 [. ?$ U0 p4 `* @import swarm.collections.ListImpl;
! y- f5 I7 i9 I H* U, H0 _import swarm.defobj.Zone;
; x$ m' V J1 c/ F- n0 Y% oimport swarm.Globals;( u! Y: }. ?3 w& U
import swarm.Selector;5 j0 Z9 a5 D: t) H, ~: x
import swarm.activity.ActionGroup; # C; q+ J* ^! q7 l" @, b
class Agent {5 U1 r9 X& U: ]6 ]* ]- u3 r
char id;) ]! X4 c4 S+ O4 L& t- @' H" R
* ^: N! Q, o0 M6 C$ l Agent(char id) {
6 F8 `! h2 a8 Y3 k this.id = id;
1 l% N: ?) Q3 z& y. W0 [4 \ }
3 X# P* @6 @3 y! M+ ~" v( i6 U4 a7 z; c" w$ k
public void agentStep() {6 R, A5 ?& T% h0 q) G0 v0 V7 k1 a0 k, M
System.out.println(id + ":" + Globals.env.getCurrentTime());
, |: j) S F+ u) Z: Y1 v% M }# @5 ^0 z; I3 q4 c* R
}- E- ~6 t( Y& F; Q
% z- }! v1 x; ?& S3 Z' W7 X- apublic class ActionGroupDemo extends SwarmImpl {- a' X W6 J% W; G, p
ScheduleImpl schedule;
1 z8 ~3 `5 p' Q( x: Y' C ActionGroupImpl actionGroup;9 L Y4 J+ N5 O4 e5 h2 p& w- P
ListImpl list;. c4 r! V5 S+ Y; h+ w( b
char Id = 'a';
& l9 m+ M) P1 S8 ]7 @9 m3 ^5 t, b/ r. X2 V* ~+ o
ActionGroupDemo(Zone aZone) {
8 b; }5 H" u) H6 r' f5 [- K) N2 N super(aZone);. X, j% x" q, H( C
list = new ListImpl(aZone);% [: |& ?- U8 l7 p$ p1 A0 D% v8 M0 g
swarmSetp();0 o5 S+ ~& k ]/ q6 p8 t: `9 Z9 h7 P
actionGroup = new ActionGroupImpl(aZone);
& r* z, f0 Q; a- N" S6 P' i) b4 | schedule = new ScheduleImpl(aZone);
: Y' ?2 B# I7 \* v( [ try {8 Z+ e( L0 k" j, _
Selector agentSel = new Selector(Agent.class, "agentStep", false);
; y4 R+ \& c/ I5 ^: i/ B; z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ B' Y8 p2 X. A& H
6 O' {; ]) Y( h8 [: W8 F% o actionGroup.createActionForEach$message(list, agentSel);
4 @ f, l; H1 h* j( [ actionGroup.createActionTo$message(this, swarmSel);
6 O5 `/ @- x. X, E$ B9 M1 V! r schedule.at$createAction(0, actionGroup);! z" R: H: A" C+ a) L
schedule.at$createAction(1, actionGroup);* S& X7 t2 Y* y X* a' T
schedule.at$createAction(2, actionGroup);
) V" b1 Z! j# L
i2 z& V/ p: ~1 \ } catch (Exception e) {
+ b+ [8 G, R3 L3 t e.printStackTrace(System.err);
1 s$ _4 K9 l$ U //System.out.println(e);
3 G6 k& q8 g; q5 S1 y- w7 T System.exit(1);
. l, l1 ^5 C; F8 d }
' W9 Q% Z+ L7 [# X3 k+ C/ i5 O1 j8 T3 J; g2 f6 x, a4 w& W. C! I3 I- \
B, x4 R. q7 A% h
}
\, o9 [ {3 ]3 m# s# ~, I/ L( E/ }$ {
private void swarmSetp() {% s7 J9 p" K6 k1 L2 r& ~
list.addLast(new Agent(Id));' \/ d1 w1 l b
Id++;
0 W: y9 ]6 A- N- v, T( ^$ g }% Y2 G! l$ ^7 e, s( \* z. h. m9 ^
$ e4 @; l2 X$ T/ g public Activity activateIn(Swarm context) {
5 e7 \' r" B4 Z) A super.activateIn(context);$ y; T$ p: d1 p- `
schedule.activateIn(this);4 Q$ E" ]7 q3 u) W% t; n* R
return getActivity();
; f& A7 h) S8 g0 G( ^7 E }% ]" R1 K7 _" X: `* B
0 X( `& \( G0 C
public static void main(String[] args) {
8 D- @" F, p1 K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
Z* v1 T: o H t1 p- \4 Y, S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' h& Y6 S6 ]+ @' V8 L swarms.buildObjects();3 \1 S9 ^8 _) V. v' \. G' g
swarms.buildActions();
- m4 Y- \; |& C% i. ]) i8 s swarms.activateIn(null).run();
- T4 S: d; x! c1 J2 r }: {6 G* z# q* h/ T b- N- g& @
' G! k' k. j9 J6 [# k& n* L} |
|