|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 I j2 E2 N5 _ [8 T0 O
- _: j) R, E, F. T0 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! N. x1 B0 I% h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! I4 k- x7 v, r5 R) p1 U# iswarm.SignatureNotFoundException/ L1 g8 h6 v2 E- x
at swarm.Selector.<init>(Selector.java:76)6 x" R6 f( Q6 c5 K; S0 Z- H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- K7 N' x# v$ Q$ M, ?& N5 K
at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 j$ Y+ ~4 p- u' R# U. D
+ D2 P" v0 X6 O: a N& ^% n( u/ L! x% ]
import swarm.objectbase.SwarmImpl;) t3 u: W* d1 U3 I
import swarm.objectbase.Swarm;
% h+ T8 `% X& vimport swarm.activity.ScheduleImpl;
& X6 n! H% l& M" Gimport swarm.activity.Activity;
4 R4 J# j) L- c$ @import swarm.activity.ActionGroupImpl;
$ v: I8 |* q+ A4 m: h7 rimport swarm.collections.ListImpl;* k6 @, B3 ~, g0 G' y9 h
import swarm.defobj.Zone;
) H" H* B ] @1 \9 P; \0 O4 R' Wimport swarm.Globals;% l- D: e; u9 Q
import swarm.Selector;; o% g! m/ M, j, B3 p: c+ F
import swarm.activity.ActionGroup;
: }/ Q7 w. } T" oclass Agent {
( I1 V0 u: t& K1 Q* l6 K char id;
) t$ x% K0 ^6 z$ a3 `/ G0 ^- x" a
6 J; I9 s; ]+ g+ v6 A3 n Agent(char id) {
: |# c/ B2 P5 X6 A, M9 H1 C1 b7 } this.id = id;- L/ L$ M+ ^7 j. V4 p
}, I) U2 S2 t. [; d
, \! B* h* z! @ public void agentStep() {' O- q, w: C8 r) @- b" `' B
System.out.println(id + ":" + Globals.env.getCurrentTime());1 S, n F0 ? b
}
- A/ ]; |- v& B! ^2 l% {& K; T}3 d5 ?6 M i5 g1 U/ e- X
: I+ @& \) r2 z+ K# V# Ppublic class ActionGroupDemo extends SwarmImpl {
% _; n2 D; X6 M/ D; B% @. n# o$ ?5 b3 W ScheduleImpl schedule;
9 q! a! r& z) X5 I: w# z% g ActionGroupImpl actionGroup; |& d9 d, Q: H3 ^; ~
ListImpl list;0 J3 l& l6 t6 {8 `3 _8 ~( k9 Q
char Id = 'a';$ D. P6 r& D y9 [ k7 I! v
* [- u+ _5 A @ ActionGroupDemo(Zone aZone) {1 P$ n# O. m# }4 g4 D1 a8 X3 u
super(aZone);4 F _! o2 u! p' N
list = new ListImpl(aZone);
; i3 [, C3 |& |3 D$ J! H swarmSetp();2 V( x- M4 n5 R7 M' a
actionGroup = new ActionGroupImpl(aZone);7 r+ e+ k2 E4 f* V
schedule = new ScheduleImpl(aZone);
& t8 b/ n$ J+ ~* o try {/ b& `8 g+ J) O% n+ m
Selector agentSel = new Selector(Agent.class, "agentStep", false);. v: X9 b! Q% H$ U5 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 T V. A$ Z& C
0 B) e$ y) j) Z1 C8 ^& \
actionGroup.createActionForEach$message(list, agentSel);
+ {/ s! O( Q* F7 T' E4 l actionGroup.createActionTo$message(this, swarmSel);6 y) i5 Q5 p2 o- u( W) j
schedule.at$createAction(0, actionGroup);! |2 b, V. B( R5 K: B
schedule.at$createAction(1, actionGroup);
8 O& L$ H! D) J# D! L7 `) ~2 T+ } schedule.at$createAction(2, actionGroup);
& \! r& r+ e5 p4 M, O2 F8 n# }
1 j; A5 g" x( h+ S+ ^& u } catch (Exception e) {
7 v# e$ x9 ~, @$ ] e.printStackTrace(System.err);8 ~0 l6 V' y. l8 [ X- G" K
//System.out.println(e);& q( k9 y: a( ^5 v2 E
System.exit(1);
0 \( r: `3 \1 n1 E }6 D; ^9 J; m4 ]" u
! g2 x& p" ^4 E/ n$ `$ }7 i. X
z7 s; |. q# y9 z4 D$ H }
# b& x0 k/ p y6 n$ L" l. y2 A
, ?+ j/ g9 F" `2 Z, Q2 ^ private void swarmSetp() {
. v/ l& R- S/ V1 t; E list.addLast(new Agent(Id));
: m1 J; N, ]" ~+ R+ _- z Id++;
5 n" }0 C( E) D2 \, u4 f" Z1 f" m) y }/ R% i% W8 k/ q8 T g- \+ y" ^
e& h. n7 {6 X1 d; h, I0 @2 Q public Activity activateIn(Swarm context) {5 u; f/ m! F# h" x/ B3 V
super.activateIn(context);
9 h! s# a) F+ R% {4 C3 \" r schedule.activateIn(this);3 a8 y) G9 B1 j _2 F
return getActivity();
1 G& c# Y/ v. Z Q }/ ]2 V% ^* X: @# }1 K, P, U
; t6 \, ~9 ~7 l \: ?, G4 H public static void main(String[] args) {
7 {: [+ r- c {8 Q9 w8 } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 ^% M' T5 x5 ?' B" o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& Z' S7 f4 I0 N; J' ]1 U- H4 m+ Y1 Q; q swarms.buildObjects();- H8 n2 u8 n6 V; |$ U
swarms.buildActions();9 _/ w# A$ p2 w4 [' m$ u
swarms.activateIn(null).run();2 r+ h1 K; u9 g# h
}
5 Y0 F+ S. u* K! u: O8 I
1 o U7 d* D* u} |
|