|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% Q) f4 G: y0 \1 w% ?) Z: u4 X) i p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: |* K! Y' j" N1 v0 Y |. c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 }3 \$ E1 E' b
swarm.SignatureNotFoundException5 j9 ~1 h- R9 m4 v. O$ d* J
at swarm.Selector.<init>(Selector.java:76) b9 d, D, o2 ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 i- J% D+ P' M5 F N1 S }
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 }# L" |% \6 s* x2 d8 d) ?. \8 x7 h* B
8 d% [9 Z9 |0 Y3 G! V$ a* i
import swarm.objectbase.SwarmImpl;
* k/ m+ U) K6 u+ K9 M, limport swarm.objectbase.Swarm;
; T5 d/ }9 }" }2 Aimport swarm.activity.ScheduleImpl;' S6 g! E: u. b% b" L
import swarm.activity.Activity;2 L4 i5 }1 T1 N) f( A3 D6 A8 i
import swarm.activity.ActionGroupImpl;6 W% Y' V* ?6 Y
import swarm.collections.ListImpl;
: c$ G0 r" h+ Z. Himport swarm.defobj.Zone;
8 R# h1 y8 V) O! c& Ximport swarm.Globals;
' g4 o v+ b( Y# b; P# c6 x( H3 w1 eimport swarm.Selector;
0 U6 @- B, }# l# b/ j6 O7 x! p. s7 ^import swarm.activity.ActionGroup; ! f7 E0 i( Y7 V5 C- x$ z
class Agent {& \+ g. n8 \- a: D3 T2 l
char id;
" f) E: b" ]4 e3 n6 U
! N" v$ x" I# M" a' n Agent(char id) {
# I. j8 U4 w* `* |5 }% j this.id = id;
- G( d7 J4 r, O4 { }2 |% ]+ `9 W1 c. R8 X6 O4 ?( B
. Q8 `/ [5 w5 E7 A* [
public void agentStep() {
9 q1 Z0 p' X. k" c! w* Q System.out.println(id + ":" + Globals.env.getCurrentTime());; L6 O7 o3 k/ U M- g' W r0 v
}, s% l9 O3 w N( ~2 E" ?% e7 @( D
}( s, D% S4 V: n2 X5 ~$ g& v
( ^ ^' Y5 |* n; v) N8 }public class ActionGroupDemo extends SwarmImpl {4 D4 z$ o" j9 Z& U
ScheduleImpl schedule;
# v5 ^4 W( [. }6 i; w ActionGroupImpl actionGroup;0 k2 p ] c5 j& m
ListImpl list;. j @8 ] ?8 P1 k6 Q
char Id = 'a';
+ P8 L3 E3 Q# X! b1 ^3 }" ^7 u( ?- t2 t4 l. }: L7 {& y
ActionGroupDemo(Zone aZone) {
! V1 y; g# z: F super(aZone);* p' |: f$ S9 v U* F) n" g& R0 u
list = new ListImpl(aZone); w% k/ \( v& N) C7 y) W( Q" Y
swarmSetp();$ z0 I V* S: f6 _$ u2 I$ I3 a
actionGroup = new ActionGroupImpl(aZone);
; e; k" T! {4 V schedule = new ScheduleImpl(aZone);
7 J% o) `) N. A5 }& \ try {4 @1 c% b; I x& Z# }( W7 |+ d; {6 U; p
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 l0 @9 T2 E. B% Z* M! w8 ~' Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 ~) p3 J7 Q% a+ q9 {; F+ i2 y" y
+ B7 W+ `. h6 }0 c( j. ~3 K actionGroup.createActionForEach$message(list, agentSel);: X0 R$ I0 y9 h; x( F
actionGroup.createActionTo$message(this, swarmSel);
! `( S( E- S- Z/ I7 G7 ?; ~ schedule.at$createAction(0, actionGroup);
* K6 A" z6 m; x$ D6 ]* U schedule.at$createAction(1, actionGroup);- y& ~2 o/ W. ?! s( J" R
schedule.at$createAction(2, actionGroup);
A; \3 g6 R( h7 |0 J9 g6 }2 P: o: A% a7 |
} catch (Exception e) {
% K+ T; r$ m- y* I, R( D* U e.printStackTrace(System.err);
# X& _1 w) k% |2 a% T5 z //System.out.println(e);
7 J3 E8 M9 |3 o! x: m s System.exit(1);! ^% {, G4 D% z
}
# Z$ y1 o5 T/ n1 W7 {
, y& h! X' C5 z1 ]% c. Y# F/ {) {+ W* y
}% ^* Y) K) o1 p# G9 c$ o* a9 ^
, j0 q7 V8 F* g, T private void swarmSetp() {
8 n4 p' E4 w; n" @ list.addLast(new Agent(Id));
% C" n3 y7 L3 J Id++;" `/ a' O8 v# d! p& D9 }
}
2 ~5 P! Z/ R3 A" {- |" F, h1 {) r
F3 s$ }3 Q9 K public Activity activateIn(Swarm context) {
1 U9 }- C$ l" r4 N2 E3 b, ? super.activateIn(context);
8 Q) R B# b) x2 _. M' ?8 w schedule.activateIn(this);9 A7 [7 ^3 Q$ C- }, ]
return getActivity();
/ X1 C, g! x& F* C/ I }
6 K5 e ~5 n* m- x8 ]
J9 p/ X2 }3 m9 [$ J4 r public static void main(String[] args) {' s4 Q' h# E! D, W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ x' C; T/ p9 B( I5 y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# B3 f5 F4 B/ D. F2 p D0 E3 m
swarms.buildObjects();
/ [" ^, q* c, v6 f! O swarms.buildActions();
8 o: W6 I% i5 D: ~! e/ O" w swarms.activateIn(null).run();
: A* K' r- e% `4 a( x4 a }
$ c; c) w8 G6 h6 |+ b' B8 O4 z+ G% p' l" ~' }
} |
|