|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " `1 Q2 V9 B- t8 v6 j. k
7 y' b. D7 M E* a( k6 C: ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* }' g, _, n* x% @- U( Z/ h" K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: E: I7 Z' C# c7 Y8 E$ _9 q% lswarm.SignatureNotFoundException
2 a3 f+ s! j, }' h1 a D B$ }8 I at swarm.Selector.<init>(Selector.java:76)
* @+ X" F1 M( @# p) ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 K7 V% A" [/ l' ]' ~# o at ActionGroupDemo.main(ActionGroupDemo.java:67)2 v/ F7 j4 q+ P+ y
3 R7 n. u" G9 g) Y
/ p7 { t; J2 n: |$ s/ u, e" X
import swarm.objectbase.SwarmImpl;0 `. F6 B+ h1 ^+ q& g+ n Q) `
import swarm.objectbase.Swarm;2 G2 o6 C/ K! z- @
import swarm.activity.ScheduleImpl;$ O% S' U9 A) i. `
import swarm.activity.Activity;( s; a) w9 v9 I S O
import swarm.activity.ActionGroupImpl;/ |% D7 ~- k n' g" D6 q! }' k
import swarm.collections.ListImpl;
& w- O1 s$ \; R9 s# ?4 Vimport swarm.defobj.Zone;
; Z. F- K g- R- zimport swarm.Globals;
; ]) d w, E& B5 E5 {0 ~5 E& ^7 Gimport swarm.Selector;
4 p8 E, E/ ?. E& A% [8 c. Vimport swarm.activity.ActionGroup; + G0 o7 f" A. K3 A# }
class Agent {
$ l5 J( V; I. t) N4 i4 O. N char id;3 {$ X0 n$ G, H# X+ G
- g/ J$ O1 G- I* o, c/ V
Agent(char id) {8 W0 m7 J" a2 _" K4 P% f
this.id = id;3 H1 W4 z$ _5 ?( ^% J
}
e. X1 O8 _0 q q+ o; f3 I# W8 K( p" A& `- C
public void agentStep() {/ Y; q1 q" ]/ L" Q Q) I
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 P; B/ k1 w4 f( y7 d3 `4 {* U }
7 }2 d; h4 b- s' D- t B}
, t, k- V' @$ W% T; z' s3 W. f0 f* g$ I( k. e5 |2 o" ^5 g. ~3 B/ r
public class ActionGroupDemo extends SwarmImpl {. \. `- a3 u' d7 H
ScheduleImpl schedule;) F. `9 q. a$ }2 A+ @6 }/ Q
ActionGroupImpl actionGroup;& a( [& A% n% V/ p
ListImpl list;
2 `# P+ ]) A# u+ c' `, T char Id = 'a';
3 {9 X+ D" u- F8 m5 |0 \, d7 i; u( ~* H+ {" P5 t
ActionGroupDemo(Zone aZone) {) p( y& i; w8 [
super(aZone);
' B" x* X' d+ M) ~" S7 ] list = new ListImpl(aZone);# r8 U9 A2 a& w0 \9 ^: f2 {2 l
swarmSetp();
4 m! t9 K9 q. K9 e& n' h+ b& d& t4 q actionGroup = new ActionGroupImpl(aZone);
: |( v) n; }0 B) [/ W! O% a schedule = new ScheduleImpl(aZone);
5 i, U- i5 Y$ }" V2 E) j* v try {
1 U) ~) q# u8 G7 l6 ?+ c Selector agentSel = new Selector(Agent.class, "agentStep", false);( ?. q( ?0 f$ T7 c3 d+ _$ v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! `& }1 O6 I! s' {1 P' R
; w, F/ c/ G9 X4 V" D* v( A( t' q
actionGroup.createActionForEach$message(list, agentSel);
) x* s n% r2 O) @" i* t actionGroup.createActionTo$message(this, swarmSel);- n+ A d' D* H
schedule.at$createAction(0, actionGroup);
" h( B0 y5 @5 U( L! j schedule.at$createAction(1, actionGroup);& H7 D; p' Y- L9 o0 S, {2 `
schedule.at$createAction(2, actionGroup);
; Y' O- ^' |. P$ e3 d
2 j( y* D- H# Z2 a3 j# h; L } catch (Exception e) {" z4 i# U) M# X. g& F3 p! D
e.printStackTrace(System.err);# `( o5 D# }. x1 M) F- r$ d
//System.out.println(e);
8 b: ]- p" q" ?2 ?& l3 P9 ` System.exit(1);
7 v& {, Q2 i! o r8 \ }
" u+ j9 n0 N/ p1 P- H/ @# s, `# ]0 X& x% p
4 q/ W; S. t* ? z& t# s5 y2 H/ O
}
& \+ _) F( H3 m0 H% X
- ]1 m' i+ o" F9 ^, F0 `$ C- E) c( N private void swarmSetp() {: G) s6 O. d4 B. N
list.addLast(new Agent(Id));
* T) F$ A1 d0 ^! l8 Y Id++;
8 [; G9 S. ^$ ~; ~7 V- K }
4 n6 t7 t! m% c$ r6 _3 O2 [% y. H& o! r- D2 ]
public Activity activateIn(Swarm context) {! k; N8 S- u) X$ P2 J
super.activateIn(context);
- V. H4 c- @' ^$ Q2 x& E/ F) z schedule.activateIn(this);
! d& a9 q, ^2 n% v* V return getActivity();
/ X7 m! _: @1 G$ q" C2 G9 m: q }
4 @& l* G* Y" K$ t& m; y! ]# I$ C. |9 H
public static void main(String[] args) {
$ b. M8 `! ^7 b7 ?8 D7 p% v" [ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 Q" C; l2 t0 o. N. S/ g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
A5 ]. c% K8 R! I swarms.buildObjects();
3 U: v }1 q/ v* i: U0 D7 u3 m swarms.buildActions();
" n1 U% E, h1 E1 n( L swarms.activateIn(null).run();
. K0 _0 d$ w, K6 V$ I, O# A8 y2 x }
/ ?( g, C! ?: E: ?( I) g: F* w3 J
X) V- K. x. s( |4 M7 p} |
|