|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) B V) _9 M1 k
+ r; s& J. s# o9 c) R7 w/ _) j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ U7 V# M% T1 e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 b" F1 o; a1 F2 v+ f, h- rswarm.SignatureNotFoundException2 [' E0 l$ l/ _7 z" h1 e E
at swarm.Selector.<init>(Selector.java:76)
$ t6 _2 E' I K; q; ^3 ]+ y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 f$ S* i8 C! R" R/ Q7 `- O- C at ActionGroupDemo.main(ActionGroupDemo.java:67). J. k6 c/ v' {- W. O; O8 C! F
$ J* h5 L2 {: h0 l
) j3 M( o* q% A- b i
import swarm.objectbase.SwarmImpl;
8 ?8 o/ P! h* W1 r mimport swarm.objectbase.Swarm;1 ?; A6 h: V( f" K- e
import swarm.activity.ScheduleImpl;
3 O& `: c* T5 H, b* simport swarm.activity.Activity;
4 |: `3 h3 \- x) a+ @ b( iimport swarm.activity.ActionGroupImpl;
" y2 _: E. K5 uimport swarm.collections.ListImpl;
, e6 U9 u, |, R8 N* Vimport swarm.defobj.Zone;
6 l3 I. z0 ^6 Y% j5 b5 R4 bimport swarm.Globals;' |% _/ }' p5 I1 B
import swarm.Selector;5 \5 p1 m9 ~, l9 m4 `/ k
import swarm.activity.ActionGroup; % c% I$ ^2 E/ R! i
class Agent {
5 I% o6 G: n9 W char id;' ?# D5 g1 q0 Q8 n
: W( o4 [0 z9 B. q' @
Agent(char id) {9 q3 H6 k# G% ?7 A
this.id = id;) l% ^5 s- `# I$ B. w6 m
}
) w7 y$ G( q! Y( i+ u+ e" O
: z5 l; n! s. g6 E+ F& s public void agentStep() {$ A* a$ i% t d6 y( D. ]
System.out.println(id + ":" + Globals.env.getCurrentTime());9 P Z4 n7 p# h4 c/ h3 r
}) i( Y* c7 @8 h9 q' W6 w/ i
}
: N- Z$ Y7 j, ]0 Y7 n' Q: J& D. r0 X
public class ActionGroupDemo extends SwarmImpl {
3 `- |( B7 b* e; e+ t: e/ ^. A" Q& N ScheduleImpl schedule;
9 f7 s C* @ _% g9 m* X! w' T6 h; Y ActionGroupImpl actionGroup;3 J0 G* L) W3 L+ e, F9 `8 R; t
ListImpl list;0 H0 |2 S* d( Z2 V
char Id = 'a';6 W7 K: i5 l* I# @1 A. Y9 k& k. L" s
# \6 A$ z# z2 q. f* U | ActionGroupDemo(Zone aZone) {( n: b/ C; o* `8 d6 _" J9 B
super(aZone);
+ d1 ~2 W. } n: W+ N list = new ListImpl(aZone);
6 d# ], O6 D8 s swarmSetp();% y! h7 |8 O0 x% K
actionGroup = new ActionGroupImpl(aZone);0 y4 b/ R/ j E" e0 f5 f
schedule = new ScheduleImpl(aZone);
* i9 R: L" P9 P, W try {1 T7 {- k3 F w! L
Selector agentSel = new Selector(Agent.class, "agentStep", false);% a. |" K* X+ z( T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
W; Q0 F0 M4 k. h$ g( V! W4 I" F" U" P
. R% `4 {' O# B7 `/ ?0 t actionGroup.createActionForEach$message(list, agentSel);
' w4 k9 Y! i( d! S& l$ E8 c actionGroup.createActionTo$message(this, swarmSel);! D9 ]2 v! G7 C2 n/ [( N9 t9 r e
schedule.at$createAction(0, actionGroup);4 X+ x8 ^, r, Z
schedule.at$createAction(1, actionGroup);: q/ L4 f9 b/ I* V6 u: M- F
schedule.at$createAction(2, actionGroup);) z6 |" ?% H- c" c) a+ k% ?9 c
+ t. O: D# b4 H3 f1 O {' ^. o
} catch (Exception e) {# e# f$ `! r$ ?; f) x
e.printStackTrace(System.err);) V0 [2 {& Y/ @6 \, j) i
//System.out.println(e);, F. U+ R) U" P8 A6 W
System.exit(1);& h1 v* ^9 }1 ]- J, o! z
}$ a( J- B- R7 H& {# |- s5 d/ w
! m" e. |, b' Z6 V+ U. B
# V% Q0 A0 Z( d1 \7 m/ D t' {* ]$ v6 c }; q- b$ F. o* }' b
0 P3 l# S: B0 f& t0 {4 ^& l8 h* O private void swarmSetp() {
7 b8 u! C: h7 ^4 r/ x8 M# ~1 w list.addLast(new Agent(Id));
) |. E9 j' Z* v( {1 j5 e$ L2 w5 Q Id++;4 l0 R4 x3 F3 W& g; `
}
2 U$ l. v8 M" j" t7 @4 _+ x4 S: s) j, Y
public Activity activateIn(Swarm context) {
7 `* C, g4 N+ f( H2 x( l super.activateIn(context);
- ~7 d' c2 h+ W* I$ e/ M schedule.activateIn(this);
# @+ X5 ?# `% Y5 E; b return getActivity();
9 _. {: K1 l0 ? u% j H4 N }
3 V6 m( I! S% {- d7 y6 J( B( |, T7 o$ R4 U2 k+ g( v
public static void main(String[] args) {
8 S3 L; G+ x/ Z" E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! _7 K# L% x( B3 k0 _ P! C8 z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 @8 ~: `; t8 T J l2 q
swarms.buildObjects();
# P8 v: {. m2 v. H swarms.buildActions();
( V7 [8 j, u/ s2 f: J swarms.activateIn(null).run();2 a( R- i0 W/ X
}9 H1 {0 d; B" P5 I& }0 @" ]
( y: d7 y9 K) O- G9 r: q" k, ^8 N
} |
|