|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 p/ ^ Y& i. w/ Z9 s0 R
2 m) ]- M6 v4 e: n/ h# X# n, R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) h+ U- s) R% F) Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" `! ^9 P% E# u5 o, b* mswarm.SignatureNotFoundException
$ S, B, ^8 I' P/ R: I* N at swarm.Selector.<init>(Selector.java:76)
7 I* ^! [" I6 N at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* D/ U9 [7 r3 J* p
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ Q& b, p$ X% ^( [$ p$ A
, m! b4 e n: Y" ~/ P/ r
& X8 l ]# {9 [, r. M; iimport swarm.objectbase.SwarmImpl;$ K0 I3 P5 y2 S) _
import swarm.objectbase.Swarm;
! v! q- G3 O: X* himport swarm.activity.ScheduleImpl;# f+ N; [7 @) m
import swarm.activity.Activity;5 O4 q6 f7 }# Y0 A" H: ]4 ]
import swarm.activity.ActionGroupImpl;5 z8 Y+ ^" S% ~- I
import swarm.collections.ListImpl;* [) X5 J" e4 o2 ^! E
import swarm.defobj.Zone;
# ?2 P: i* R9 e" U- {import swarm.Globals;
) q8 L" T/ J5 y: M; u( N vimport swarm.Selector;
+ j: g6 L/ Q$ B T# j; |import swarm.activity.ActionGroup; ( K8 [8 N6 y) ^! _7 h
class Agent {
! W3 Y1 X1 P& w0 G' @# m, N char id;8 A' r; u% B0 V' K5 r: q7 M
G5 Y- r6 ^; y; g0 X
Agent(char id) {# K3 B8 `- j$ [- z1 y1 O" N# h# k
this.id = id;! p! B: |5 D7 k& |4 T* ^
}
0 _$ e' e* P6 u) |: y# V7 s# i5 E3 N
public void agentStep() {- V4 i/ x: N1 c' _! m5 ^6 |
System.out.println(id + ":" + Globals.env.getCurrentTime());
- o1 Q# u8 V- M( _4 m3 z& c+ l% o }
2 |! C: Z* g7 \; g}7 Z% D( A5 l G/ F' o7 a% n
& \" p9 h& n& ]+ W8 b0 E2 J
public class ActionGroupDemo extends SwarmImpl {
: U1 a" O3 \8 f ScheduleImpl schedule;2 m1 S5 N2 c j9 }0 O. w
ActionGroupImpl actionGroup;
8 E! @( t' b- J. H7 z! x1 J. Z ListImpl list;
% P5 O: I- U+ V/ Z" @ char Id = 'a';: ` q) I, C7 m2 E
* o; f3 J- [* \2 y: T- X ActionGroupDemo(Zone aZone) {
+ q |7 X) V$ h) R- v% V super(aZone);, X. n! U5 ^3 |# _! B2 W
list = new ListImpl(aZone);
$ N# s J* Q z7 @4 ?. T% A* V6 h swarmSetp();
2 R) m. k4 \+ }2 g3 b. j+ m actionGroup = new ActionGroupImpl(aZone);2 I0 U% b$ i# n
schedule = new ScheduleImpl(aZone);; Y- s# D- a) F/ @- z
try {
* V# p5 y3 O y, g4 Y1 n+ d' E Selector agentSel = new Selector(Agent.class, "agentStep", false);! a; M5 M" a$ O- D( D( S. U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 i) e! X1 S+ O# h, R6 y
, P: W. _) r5 `7 ` actionGroup.createActionForEach$message(list, agentSel);% ~$ [0 k$ C: b' ~$ ?
actionGroup.createActionTo$message(this, swarmSel);
2 v1 a: w; ]. g, ^* u0 Y7 v schedule.at$createAction(0, actionGroup);1 Z0 R) {5 s) c/ M q3 F
schedule.at$createAction(1, actionGroup);
* r# J. o$ [/ f N `& i+ x schedule.at$createAction(2, actionGroup);& ]) S( p7 K3 t6 f- i3 q3 m
5 Q2 o5 S$ I( R, H k } catch (Exception e) {
/ i0 c) j0 O( I, G1 A' {$ U e.printStackTrace(System.err);
9 f- o+ x$ E/ n& k7 A( r- [ //System.out.println(e);
8 m9 R" C$ n% R j) b1 C) E System.exit(1);+ Q5 \8 {3 S4 F5 f9 O a
}9 Y3 n2 E" f( [6 w: U
2 }$ Y$ y& j R2 T2 A' a# o
/ f: k9 ~9 w* E6 b7 ] }
8 c5 O( r% X$ T5 @2 _
" p8 O# D5 j, M5 {/ ] private void swarmSetp() {
6 q( j; e3 Y! P" i. { list.addLast(new Agent(Id));
3 [7 l2 W0 U2 D# E6 S Id++;* x" I" ^8 b( |# M% o4 b6 C$ c g
}: m$ s; d- G, Y( i
4 i/ x# O" @1 i# M
public Activity activateIn(Swarm context) {
3 C: c4 i6 e0 p3 T) } super.activateIn(context);! T* H& y; p4 h" }) j9 c
schedule.activateIn(this);
+ Q0 q+ J) W2 h' `- d% }7 L: V return getActivity();8 n0 U' x! Z7 v# h* g ]
}+ t; F+ o( m: z7 {9 e# t
1 ~! C/ [- [4 I7 \9 o G
public static void main(String[] args) {/ @: g) @' W; H1 u! c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; r5 P$ X0 m7 Z+ l5 o1 N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: W- N+ R* ^# G4 x- \) q! c swarms.buildObjects();( d. ]" C( x. Z& W/ r0 ]
swarms.buildActions();
$ ~9 I6 B" f" _. P- P) g( {- H2 N swarms.activateIn(null).run();
; c' F; [ N, ?9 g. I/ y+ ~ }3 [5 s$ _5 u; B8 Q9 ]3 h
$ T: ? ~3 F7 X: ], r} |
|