|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 O. y. V0 e# p5 Q
7 d6 R& g7 e! \9 u" \* d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ S) g' L+ x3 @4 s3 E8 e& j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% m5 j9 ^0 d& a( s1 Z. `2 Mswarm.SignatureNotFoundException
, e9 w. ]) U4 y, j% A at swarm.Selector.<init>(Selector.java:76)
: p- [# o2 H, \( {9 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 V! X1 `8 `( H& L9 V9 {3 g
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 r( L }+ p2 S7 q; w
5 m$ u9 O& @2 D$ d" B) g$ b
. E4 B% r( J3 u; e) cimport swarm.objectbase.SwarmImpl;
5 P8 K O9 I( O7 u- ?; ~import swarm.objectbase.Swarm;& @$ s4 C6 D0 b- ]3 l$ Q, y
import swarm.activity.ScheduleImpl;, y, z. a, A% |- P0 {0 i0 f
import swarm.activity.Activity;
5 l b% D6 }$ D5 L3 f1 B, Q# @import swarm.activity.ActionGroupImpl;" q! P% W4 g, @0 w, S+ X0 V2 C
import swarm.collections.ListImpl;2 U" @0 I! v h, ]! y6 j
import swarm.defobj.Zone; " s& }- y' n+ }" h
import swarm.Globals;6 w# W! X. g6 A# ?; [. e
import swarm.Selector;; z. `+ e$ W7 u* }
import swarm.activity.ActionGroup; - @. C9 X) r5 G% s/ P- V& {
class Agent {
1 Y' }( Y. b3 ^) |+ s/ V9 i: q. u char id;
& _) i, r3 k+ R/ O
" B: y$ V7 m: }( R7 F2 u Agent(char id) {
, a8 u0 g7 ]* B t this.id = id;
' Z% q: L( T- F* ]# ]0 r9 L }! Q# e8 q S7 v9 A, _5 H3 U
; u: B3 ^+ y4 A, B# z public void agentStep() {
( \. f2 w9 [7 A% a8 ]! K0 ? System.out.println(id + ":" + Globals.env.getCurrentTime());
8 ]- T3 d; u( [ }) B; j; Y' \' u. Z! d. }$ b
}8 E; F1 v7 y5 X8 G Z
- o- P7 O+ h$ e; ~' O% d D$ Npublic class ActionGroupDemo extends SwarmImpl {
y1 u0 O, P. X/ r+ f" O ScheduleImpl schedule;
0 ]4 q! z0 }& p/ X! d* C' o3 f ActionGroupImpl actionGroup;9 ^) O8 R+ n( Y% H
ListImpl list;
2 }7 W. _; o/ ^6 }( G/ L. q9 ] char Id = 'a';
1 t: o: h: y' u% m$ M: r: Z# P; K, O0 K
ActionGroupDemo(Zone aZone) {+ }( n8 T) y8 f- `! T
super(aZone);
+ O: g) W2 q3 q3 G9 g0 K) { list = new ListImpl(aZone);
/ _/ s5 F* H+ k. H; Q; _ swarmSetp();
) `7 c6 V# w* l" o' G actionGroup = new ActionGroupImpl(aZone);8 I0 Y: @+ ]% g, X4 G/ {1 ?' Q
schedule = new ScheduleImpl(aZone);
, A, b. k1 G3 v" o5 \7 K9 @ try {, A0 r4 m3 V+ @; k
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. j5 a w& S% u# Z5 E) t5 N( M Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* q, Q( v: }. S& R, |% d; t" d
0 Z- a* |+ z& C3 u( U actionGroup.createActionForEach$message(list, agentSel);( m7 c0 _) C6 h* b
actionGroup.createActionTo$message(this, swarmSel);
+ f9 Y$ w4 O& k+ Y! c' _* y schedule.at$createAction(0, actionGroup);
# o. l6 @5 N7 W& K1 j schedule.at$createAction(1, actionGroup);
+ F- A1 u- [8 i: R schedule.at$createAction(2, actionGroup);
) T% f, M q& s, v$ |+ c0 z. x8 L! a0 O; d( Q( e7 @
} catch (Exception e) {
8 m O) M( S6 P* J e.printStackTrace(System.err);
6 \5 C- c# t/ V; u$ ]+ ~ //System.out.println(e); M9 M2 \: G- w2 P9 h7 `4 i
System.exit(1);
) `6 c* x1 x6 R/ F4 P# Z }9 O1 m: b( }$ O1 v
: T, e; M( o! g3 \' T+ _% \0 ~; m2 q7 F$ A; ~$ p3 t( O5 [
}* q6 J! s$ \5 N3 M" n
8 `! @7 @/ q0 z6 X/ m2 v
private void swarmSetp() {
0 Y0 v7 K$ J( f1 a3 }4 Q9 b4 Z/ n list.addLast(new Agent(Id));
" S) |7 @2 \3 q9 F% l1 C- F& ` Id++;
4 B) B V5 ]: P- s* ` }+ f* b3 ]8 {/ }3 O
4 d8 M# d4 u/ X2 q, |9 ]6 `2 e public Activity activateIn(Swarm context) {- o( ?7 @0 Y* r/ U
super.activateIn(context);5 C" ?5 @9 u6 D; n
schedule.activateIn(this);
( |9 U- [9 O- P a7 S" ? return getActivity();
7 m- f1 G; J0 d2 g7 V }8 ^$ Y& a% v( a$ [$ t
4 N$ h8 a \* B w: Z
public static void main(String[] args) {
0 [% S* y3 I1 `( \( a6 D& a Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: |9 F% {: i0 m7 l; F3 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* a/ ~2 Q! f$ b+ |
swarms.buildObjects();7 A& }) d. v7 b' z6 U! D
swarms.buildActions(); r. e, m0 B: J3 a% d" p
swarms.activateIn(null).run();! z7 ]7 C( A1 Z
}3 P" b; x$ ^+ Q3 N
/ K5 ~& g. n7 r0 b) J
} |
|