|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ u% l& j. Q! @- }: r9 Q! v' g" I$ \% x% ~9 E' ^! a: e' f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& A2 x+ ]5 o& I8 ?2 ~7 n% L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% g, S# x* b; Y+ L% {6 C
swarm.SignatureNotFoundException
K- U. X( Q3 Y2 H0 G9 ]6 t- C at swarm.Selector.<init>(Selector.java:76)+ W" o5 U" u" h. I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( ~& j) u6 J9 g' F: | \& K" m at ActionGroupDemo.main(ActionGroupDemo.java:67)" k4 }% H8 `0 a+ a9 C' _1 g# W
: x( u. t# K7 r! _8 _% x/ P3 [3 |1 ~+ B! S+ r1 c5 {- j* q" i# c
import swarm.objectbase.SwarmImpl;
' w$ Q' b' S" Gimport swarm.objectbase.Swarm;
8 m' O% U. t& j4 E+ g3 S4 y/ Zimport swarm.activity.ScheduleImpl;
" F( Q% U0 t, J& fimport swarm.activity.Activity;
' x, Q+ I; r. {( Y3 R! b7 }import swarm.activity.ActionGroupImpl;' U5 b( }0 Z% Z. c" o8 F
import swarm.collections.ListImpl; K1 A+ P- _7 Q/ O% s
import swarm.defobj.Zone; 3 _ _ h' {! D
import swarm.Globals;- J1 G& |& j2 {1 p" e9 Z0 ]- w& A( ~5 g
import swarm.Selector;% [0 v; T1 h+ [+ Q) T
import swarm.activity.ActionGroup;
2 F: b9 q; ?; n8 Yclass Agent {
6 o/ S S: g, j: @& ~, s( H7 C; [5 j char id;
, a( O* W+ j) I! B6 L" R, j% ?" y' z$ e/ c/ g4 m m1 ~$ p
Agent(char id) {* h8 _; a/ [' |+ O3 ?8 H
this.id = id;
* q ~; P! \- g: U8 g }- b9 T( b1 o3 ~0 N: j; R% |
* n2 L. l$ G% [! ^) m public void agentStep() {
1 n4 k. a% v( c; f2 k System.out.println(id + ":" + Globals.env.getCurrentTime());5 f# U+ K) b2 p' r4 j+ ^8 S$ K
}
5 G& P: F9 V% b2 Q# u& M}8 J5 p; m% j3 \; T- x$ L# V
, Y1 a; i( w8 W- D9 Apublic class ActionGroupDemo extends SwarmImpl { G3 L- A5 \) E5 l- Q4 @& F) M
ScheduleImpl schedule;5 {- D1 W- Q2 ]% m% Z
ActionGroupImpl actionGroup;& O0 w8 j! @1 s& B6 k+ w
ListImpl list;" U( A. d, A0 ~) T' b3 D/ b1 G
char Id = 'a';( g: g; V* z+ H
; u4 R, c, `8 V! |) E3 N. }: }. q
ActionGroupDemo(Zone aZone) {! r/ S& ?) l& J/ l5 z2 X. K
super(aZone);" A; s' Z" F" x9 x
list = new ListImpl(aZone);
1 u0 n9 H( \& l* T! p# _" o. Y swarmSetp();2 M; h0 j A) ~: o1 d
actionGroup = new ActionGroupImpl(aZone);& E0 c7 Y6 n2 a
schedule = new ScheduleImpl(aZone);
' d) S* b) S) B9 z Y try {
# J9 b/ i3 |9 f9 [$ b Selector agentSel = new Selector(Agent.class, "agentStep", false);4 b% v- ]) T! _! |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- V- K+ ^9 E& Q) b% J0 Y$ j U! f7 x* {" w0 ^8 b8 `
actionGroup.createActionForEach$message(list, agentSel);
& K% h- s3 n2 }# O actionGroup.createActionTo$message(this, swarmSel);5 I7 `4 W9 F( `3 T
schedule.at$createAction(0, actionGroup);
4 P1 @9 V \. b schedule.at$createAction(1, actionGroup);
. G+ C) P) { f& g0 b schedule.at$createAction(2, actionGroup);
. m- d& a2 R- n+ M$ }3 m5 O
9 w% _0 t; C+ N) T) v. E } catch (Exception e) {
# ]4 ~7 a4 y* D e.printStackTrace(System.err);
! X G: ]- I+ b6 E //System.out.println(e);
" r/ I: ~1 X$ R& @0 K2 i System.exit(1);
: r2 Q+ D6 ]* K3 @$ q }
( |. C% A( h l, ]2 |& D, r# b! n6 ?& Q) @" X# k) i; G
# E/ P9 [2 Q3 Z; ], T- }6 u }
& w4 i, F4 ~& ^1 Z% S6 M4 }3 ~% V
* N8 D1 N! X5 A2 a! l) E# c private void swarmSetp() {* u# C. I& O$ N
list.addLast(new Agent(Id));
5 C" p+ X" j4 x/ s. U Id++;! D* x9 L& P2 {" S
}5 ]& h- ~4 r4 p7 J
) |8 ^. a7 _; i0 f8 b8 [ public Activity activateIn(Swarm context) {; X% a! d/ a/ E) D; j, ^
super.activateIn(context);
5 \# Q: q+ U! U$ e. u1 @ schedule.activateIn(this);
; a& l1 G7 v) |1 h+ D! ~ return getActivity();! Z: Z8 v. X. S! e
}
/ v7 B. g5 K, U& n ^
$ k- D1 E+ E" P6 g( w! A( u& W public static void main(String[] args) {" z* g3 J0 R. P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 e: U: d6 \" x. u- D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 O- p; _6 `- [ ]% p0 R swarms.buildObjects();0 ^' G+ r7 G5 j* }3 Q
swarms.buildActions(); s/ a0 e9 k7 f" V) w
swarms.activateIn(null).run();+ w; T5 f9 \0 d2 U( `
}: ?" Z! ]8 e+ ]6 Z; Y7 j$ `
# {9 j5 T* O) L} |
|