|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ I H' ]1 M* |4 D- K( v* L! M4 D
! ?* L% R( j* g6 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! _9 x6 Z( e; l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& ]! S* y. G+ R- W3 Q
swarm.SignatureNotFoundException) l" u: `/ k9 N& t
at swarm.Selector.<init>(Selector.java:76)/ A! A( S' t( ~6 e0 C, |. D6 Y& g5 f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# t/ E& ]# [( A% T3 @$ Z at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 X, j2 G" Y# w& Q) p- P9 B" Y$ M, U; ]) l
, U0 f! V, k' o) H+ g) m8 ]& v- N" U# E
import swarm.objectbase.SwarmImpl;9 U' {6 x0 w$ _7 g
import swarm.objectbase.Swarm;
6 n5 k. t0 b3 U& @import swarm.activity.ScheduleImpl;
' K3 _1 g- N! ?1 }) g Fimport swarm.activity.Activity;
m; u: O3 m/ vimport swarm.activity.ActionGroupImpl;
3 O- g- N& v) |5 D' @% Eimport swarm.collections.ListImpl;
4 n% u) d+ ^* s x7 o* l" Yimport swarm.defobj.Zone;
% [3 \" I' w$ I) e& U3 W; Q- |import swarm.Globals;
) s2 R/ t* J; D4 Y- p: Rimport swarm.Selector;
: r# A$ D" c. V) e# h5 Himport swarm.activity.ActionGroup; 8 q5 \) L7 L0 f1 x- A
class Agent {
* q* Q# S! q2 X. M char id;
6 o% U1 H( A/ ~* u3 ~
+ H( [$ ?, k, h: }( [+ @ Agent(char id) {- X( A5 ^& V- o
this.id = id; h9 e- H8 U9 {" A$ b, w
}
) ?# K. a! v, H8 @4 Q4 J7 y8 Q4 a- Q- F$ h) A+ y
public void agentStep() {, |- `$ V9 z: \7 c7 F
System.out.println(id + ":" + Globals.env.getCurrentTime());
' a* G, c) X, u# V }
n+ j: b6 x# D v$ Y1 @; K}& Q& }, ?1 M' z& O. l
; {6 N6 C6 V! C7 N. I, T2 g* q
public class ActionGroupDemo extends SwarmImpl {
$ u# I$ K5 B* E0 `; u ScheduleImpl schedule;
S$ p0 P% K/ J* S ActionGroupImpl actionGroup;% \6 M& q- D& P, t
ListImpl list;
9 _" Y( ^0 s- t- ~ char Id = 'a';
# ?' g7 O/ B; y: Z7 I3 q
3 ~8 a; i( X% Y& F7 r ActionGroupDemo(Zone aZone) {
+ B, M1 |; l2 K v( X5 M3 f super(aZone);
# p4 b; U- d# q. r" D2 H! G& u4 Q list = new ListImpl(aZone);; B2 K7 w, w! k/ A0 h/ b; K8 W' G
swarmSetp();0 L1 k4 [. M$ b- O! s1 u7 Q& p, g
actionGroup = new ActionGroupImpl(aZone);; w2 ]: ^. t8 i4 b
schedule = new ScheduleImpl(aZone);
8 w7 T' B% `6 f, Q try {4 b4 a8 R. k O6 P" r# t) X
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* O: ?1 b' A; X# S4 _9 B" g/ d! }; r" ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ Z7 e1 d% D6 B' G
% q; I. x/ b( s- C- C actionGroup.createActionForEach$message(list, agentSel);
6 r2 p- N4 c+ n# U0 `2 k9 u actionGroup.createActionTo$message(this, swarmSel);, [/ l, L6 f; ^+ @
schedule.at$createAction(0, actionGroup);# @" m( u4 ]# O& F# e0 L
schedule.at$createAction(1, actionGroup);
$ `1 v8 @9 Y+ L& O* S6 }6 h3 [ schedule.at$createAction(2, actionGroup);% X5 ~. X4 c. H* m5 Q& O* M
0 R$ |" U/ P1 c0 z1 K } catch (Exception e) {2 x2 ]4 E- Q$ P2 [/ n. _ U, h
e.printStackTrace(System.err);
, A Z+ @4 t/ n3 G- f! Z0 H //System.out.println(e);
. @; p/ w6 A Q O% P System.exit(1);
2 a) h6 y2 Q1 L/ ?8 v4 L }( e9 ?- u, M$ ~ q' u2 K; { C6 I" Z
* z% w" b. a% y% z& ?
$ }% R/ B. U- v( T! k" a6 v1 b( F }
& R7 F9 d# s$ v* v# i5 C: W H+ g4 |7 p& P3 Y
private void swarmSetp() {( X$ G& f. j0 |8 A+ _- p
list.addLast(new Agent(Id));- V: [7 O0 Q2 H- i1 ?, K% @1 C
Id++;
+ \# O% f) u- N5 A }
8 W8 _4 Q$ |7 a- P- x% E# t. W7 v! Z4 e* p4 Y; f# K
public Activity activateIn(Swarm context) {
0 C, c: r! k8 \# J* t super.activateIn(context);, y3 }& n G) A3 p0 V. O. _9 g
schedule.activateIn(this);4 X8 ?0 _) o! a# \( h
return getActivity();
# B! Y/ m) @. P9 q }
% C1 f: W' }( d" k% f9 z4 ?9 G; ]1 z( f: i: M( t
public static void main(String[] args) {0 f' P ^6 _; g5 c2 A6 L9 O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ P+ f# O0 Q( \( s/ X& G" W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, i5 F& l8 I7 Q0 s" o
swarms.buildObjects();
- a$ T+ o! t3 h" y5 z5 Q$ Y4 t swarms.buildActions();
6 t* Z2 Q% y% `$ K+ |4 H. l) ~ swarms.activateIn(null).run();
: s5 J" q+ t# G: L, q }! L0 a; }( S! u; ^
! G5 i8 ^2 B) z2 F) |6 ?
} |
|