|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 G/ W; {: e7 p7 Q7 A5 F
& O7 ~/ h8 Q/ \5 d* {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 [! Y6 y, Y e# _, E& d# s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 Y7 d. K2 ^: e3 \! w' b" oswarm.SignatureNotFoundException) B5 P/ P5 J. W3 D9 s
at swarm.Selector.<init>(Selector.java:76)& \# C% u* e' E# I1 ^9 p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 @* d- d- F* h
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# T# {5 q' h% v l" @2 |5 }( A' I, {* R* z, I
( F9 O* ~- o, m0 V# [% x+ o% L1 `# timport swarm.objectbase.SwarmImpl;
- l% ~' K% R6 w. dimport swarm.objectbase.Swarm;
7 n+ r. b5 `2 C+ R9 s. Zimport swarm.activity.ScheduleImpl;
7 ^) ^. Q6 b0 R% X7 s6 gimport swarm.activity.Activity;
# t3 D/ d I% O7 pimport swarm.activity.ActionGroupImpl;
" a1 @) p3 [# N. S% H9 Qimport swarm.collections.ListImpl;, j# n- R. l" T& M1 y
import swarm.defobj.Zone;
# ^- b# r# A; T0 x; ^import swarm.Globals;
: `4 M8 a$ |8 a7 T, kimport swarm.Selector;6 U/ L" ~6 ~, M9 |: }
import swarm.activity.ActionGroup;
$ g) Y' n0 u$ Gclass Agent {# H" \& c& U; k$ Q
char id;
9 S* A' b" k; z
* F! b. A" F% q G; a; ^& l Agent(char id) {
4 G/ E) ^# a* [4 \2 A this.id = id;% |, W4 v8 g5 \% i8 ]2 b
}: Y) j- q% b5 [" z# t& `! g
* Z$ _0 \ o3 p4 K7 ?
public void agentStep() {
$ A* f* I U! f* x$ Y System.out.println(id + ":" + Globals.env.getCurrentTime());
( S$ d% s5 F; E8 [& R1 U }7 l( ?$ D3 C* S7 f$ o+ G- M
}- e" M! y" H: `9 I3 Q
5 }0 x8 e+ W. @# f" F+ r
public class ActionGroupDemo extends SwarmImpl {
: u$ g' O4 x! ~ ScheduleImpl schedule;6 ~/ ~5 b' ^0 ~
ActionGroupImpl actionGroup; d4 k# H! s; B3 V" _( N
ListImpl list;
% K! V% r% H3 M* K+ ~! W* \. l char Id = 'a';- ]. j" b. z6 `& ? E% s; [/ B
1 G1 F7 R: O) _$ A ActionGroupDemo(Zone aZone) {! {. s' S3 \0 D9 @8 O1 o
super(aZone);
$ h4 N! M! w8 A+ \& ^5 O$ l" y+ F+ V+ ^% b list = new ListImpl(aZone);
/ h/ J; j" F& h# F; Q v swarmSetp();( j& _, T8 X9 d* y$ M
actionGroup = new ActionGroupImpl(aZone);
4 v1 d- W+ o. w _: E schedule = new ScheduleImpl(aZone);
) ^0 p% D9 A: @4 O try {
/ p5 u* M. o- F7 q Selector agentSel = new Selector(Agent.class, "agentStep", false);
. Y1 T( a4 Y7 C8 Q! h, L1 \0 A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- l4 H' @9 X0 _/ f/ @2 z" S. A 1 y4 j; b5 w [ q, N! l" W
actionGroup.createActionForEach$message(list, agentSel);* N' V# J1 g+ K3 p; H$ ?) K
actionGroup.createActionTo$message(this, swarmSel);
. f3 t% F1 u# K schedule.at$createAction(0, actionGroup);
4 o; l% R2 [3 N4 S- M, a( G schedule.at$createAction(1, actionGroup);" G0 {: I% p' C. S$ B. O
schedule.at$createAction(2, actionGroup);
" _: ]+ Y$ n( v' C- F6 o/ j, E# j- o* D
} catch (Exception e) {
! c1 U9 v4 A h- S) ~8 F6 u e.printStackTrace(System.err);
# `6 i7 i: H" D0 Q //System.out.println(e);
/ X8 j$ G* C! `3 a! i4 @ System.exit(1);6 l1 o8 I* u, l7 ?9 D
}2 n' ]1 X& t" e( l4 W9 {
! K5 Y0 Z0 J* O$ y' H8 ?8 t9 {" @) n5 I$ z$ J! C: B, Q( n
}: i4 x7 u* D& k5 e% H5 S. o& O
' M! r3 E1 N. q" G7 g) } private void swarmSetp() {- s9 ^+ U+ k% z& U
list.addLast(new Agent(Id));
7 ^. g. n6 O. w Id++;
% e4 ^: P: D% Q& _& w }- [6 l) j+ N; d, I. A
- ~6 Z+ K* J" l" l public Activity activateIn(Swarm context) {
7 s" e+ Y) T# v1 i3 H super.activateIn(context);
9 u( O8 r% c: s$ a# S5 x0 U' C schedule.activateIn(this);0 A+ G1 S) t% {- F4 m# c
return getActivity();
1 A: v0 |8 N0 B+ S6 a1 n( k }$ T& {) _/ ]' D+ c
9 a; E! x {# s7 M8 n: z
public static void main(String[] args) {
' w$ I+ }; Y* Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 q% ~: I- \* M7 o+ I# E9 H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ n$ q8 h1 L& U
swarms.buildObjects();
. \5 x0 q V2 J. x3 @ swarms.buildActions();, P }( x$ t1 m% F% {$ f: f
swarms.activateIn(null).run();
7 L, a3 \8 Y" v8 _2 i }/ z6 x1 f9 r, C7 y4 Q( Z
+ a/ X# Q: `; B5 R% N} |
|