|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) t# ?* A1 P( |. }/ m) i- S% o
" _. M7 R& D5 ]+ L% y( n1 ?& z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; }# o, K6 h) L3 ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! Q( e& b( `( `! Y
swarm.SignatureNotFoundException) V" B( z5 g, I) x) r0 B
at swarm.Selector.<init>(Selector.java:76)
# E; O* p# Q0 x e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; a; d3 B2 \9 f0 d9 L at ActionGroupDemo.main(ActionGroupDemo.java:67). }8 b$ \1 l' X6 A2 N$ P
0 a6 o; a: r! P5 I4 X
5 ] \* x, j+ V( nimport swarm.objectbase.SwarmImpl;
2 _& e: {- b: F7 L& g' e* ximport swarm.objectbase.Swarm;0 u: c2 S* T7 i9 w. N) a
import swarm.activity.ScheduleImpl;
. g9 u! b8 V% q. J! r: ]6 F* G( @import swarm.activity.Activity;
1 b; V& s* L( z) Z4 @: [import swarm.activity.ActionGroupImpl;' B0 l4 f6 `+ f; U: \
import swarm.collections.ListImpl;' M6 m, Q, Y5 w7 Y/ n" d: H
import swarm.defobj.Zone;
' L' K+ u1 \: L3 |import swarm.Globals;
0 e5 A* K5 R+ p* }# e3 T% Bimport swarm.Selector;
~8 D* h' @7 R# ?$ Himport swarm.activity.ActionGroup; * ?8 H: _* V0 T- x- A
class Agent {- h, n. P% J3 v5 k* c6 ]. [) y
char id;$ L' i) G! j7 m4 ]. _/ v
! v$ d8 T9 Z7 } Q0 v, W
Agent(char id) {/ _2 ^ U& a3 y, d6 h) K# x
this.id = id;
. c7 {) S5 R9 a7 R/ |# ] }
0 j! [: E' c! Y. l% r; c; q
8 I- |# P, z/ j" K4 K6 y& \+ z public void agentStep() {
) X/ R4 G- W% t# G7 [ System.out.println(id + ":" + Globals.env.getCurrentTime());( E! m! t) P1 q B. l
}; {, G1 i9 x7 X4 _8 a9 {6 ]
}
6 Q* L8 W. ~; V) P: t9 U* c
/ X/ E" \) m7 I/ ?' G2 S/ c0 L6 Apublic class ActionGroupDemo extends SwarmImpl {: k( p1 ^4 ?$ a5 i* B$ }% Z9 B
ScheduleImpl schedule;
! d: V7 \/ l' H: f2 t0 n; d! y ActionGroupImpl actionGroup;% w5 ?# J6 t1 [( @
ListImpl list;4 |4 _! _) a7 m6 h6 D2 [
char Id = 'a'; P$ J- `: {3 U3 U
# h0 G6 l! y4 I4 R: } ActionGroupDemo(Zone aZone) {
; Z/ h1 M# i2 _ super(aZone);
# @5 G J* x. w0 M list = new ListImpl(aZone);
5 l- N8 w& [" `1 ]; R swarmSetp();7 B9 K1 g6 ~) w, Q+ t( _# e$ ]
actionGroup = new ActionGroupImpl(aZone);3 I3 g+ N4 a+ O- m2 I; O
schedule = new ScheduleImpl(aZone);
% B( M2 a- n; N# Z; u9 L# l try {
6 e4 `; g/ S7 Z% U Selector agentSel = new Selector(Agent.class, "agentStep", false);$ | L6 b: v7 d3 U/ c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 p, _9 v: R% C/ ^: r* W) W
1 j, K2 u5 ^3 I: M3 a actionGroup.createActionForEach$message(list, agentSel);
3 E: ^4 N6 D+ e: J3 {7 S1 s0 Y actionGroup.createActionTo$message(this, swarmSel);; G* h2 a X* v
schedule.at$createAction(0, actionGroup);
! Q9 z0 F& x; x+ H+ i schedule.at$createAction(1, actionGroup);9 d5 ?2 E' e! f/ W
schedule.at$createAction(2, actionGroup);
J7 ^% M8 ]% \- J* o( b+ R7 U C! a/ x }6 O `) K" V8 L4 f
} catch (Exception e) {. ^8 R7 m- m3 S
e.printStackTrace(System.err);/ b( V+ E3 y* A- y, G8 W
//System.out.println(e);
- k2 O# Z A! K; c3 s8 Q2 g System.exit(1);! M3 e- o+ O6 P6 I1 z
}& |% X) X. v; @1 t( T$ }
; u7 u5 \# {! ?7 `/ o8 P5 k
2 I/ U: H. O- V& P- I) I }, B5 }- a" M" R# }
6 K2 P! p( F8 K: |; {/ w C7 m
private void swarmSetp() {
: C) [9 F }6 a' h; E list.addLast(new Agent(Id));0 e. e7 j. R j- ?
Id++;' _* i& o+ g( ?; _! n* E; o
}
' L. q1 |& L8 u8 `6 i! ]3 ]4 ]
* m5 M3 i) }4 a$ G! Z$ f public Activity activateIn(Swarm context) {
) S: l3 X/ r; M3 @5 z9 J, b+ v super.activateIn(context);- [7 w2 [0 O& ^- E# b' R2 I
schedule.activateIn(this);8 S$ R- G. K7 S& B
return getActivity();
l+ k6 W6 J8 B B }% E' A& I- e4 u3 ]/ x
# _" ?- T, ^ f, N" D9 q5 p( _5 d public static void main(String[] args) {3 d! {$ G1 L. R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% H3 M1 X7 W* i* O4 v# x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 Z" f* K6 w; I$ ~8 N% @. B swarms.buildObjects();
% l) \& O% i; p" x' k0 q" |) Q swarms.buildActions();8 h3 A+ {+ T) p7 q% ]. o
swarms.activateIn(null).run();
! J4 ?8 N" ?1 X& Q }
; |/ [! {( Q& Q/ {
: P% r# T( c# P- s3 A" o! M} |
|