|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * T; ?# P/ l: w( l$ \! b% ?) H6 s
9 v! U: j$ O6 P3 Z8 o* _4 N# N1 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ F) L* G. w, z9 s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 v3 \& V4 N7 a H
swarm.SignatureNotFoundException) y& k$ I" y3 l& O7 E/ b- o- _
at swarm.Selector.<init>(Selector.java:76)! U$ z- S: {/ ^! M7 o0 g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ X- ^& a+ j' O3 ]# v& m" w
at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 N7 {4 u! ^4 _% @' k, u
5 ]/ u+ v/ J8 [7 o J
. p8 L' s. M2 N* s# g" Simport swarm.objectbase.SwarmImpl;
3 x( O* H6 p. H8 Simport swarm.objectbase.Swarm;0 I" x* c* e5 X- u
import swarm.activity.ScheduleImpl;4 d3 E" ~! F6 l0 }3 L
import swarm.activity.Activity;
9 B/ P( j4 N4 L5 ]/ bimport swarm.activity.ActionGroupImpl;! v; f: M5 V- N, K3 M5 p0 s& {1 ?0 S( N
import swarm.collections.ListImpl;
2 g: c e; ~+ g' a, Q. t( Yimport swarm.defobj.Zone;
2 f. v! X; E9 [, I- bimport swarm.Globals;
+ x& D5 H1 j: T nimport swarm.Selector;
( O9 M) o# Y: L' p, w7 V4 Jimport swarm.activity.ActionGroup;
+ \% z9 a) t! a* U! U: l- I& J5 Bclass Agent {
8 c- b1 O }1 p: ]% X: O, b) ]: D char id;5 [% q9 f; L/ V" M
0 [" M- ~" H# q8 n
Agent(char id) {
4 v. @/ ~2 q- S1 _& N7 A) |3 P7 j/ a this.id = id;) |" t0 B' L0 f6 J# E* Y/ R
}8 I' y& Y. J9 V* J/ @) v* v
+ X% O, N4 W6 t3 Y+ ^! H
public void agentStep() {% @: f5 ~: d/ |; ^
System.out.println(id + ":" + Globals.env.getCurrentTime());0 U, V A6 @' m- u& q+ Z' u5 h
}
/ n8 _, q* z( j! z& P}
% [" Z% F& i9 _- ~4 |. H; U8 Q
& \6 c0 R* \3 F/ ?public class ActionGroupDemo extends SwarmImpl {2 f- d9 S( u( D& ]. {1 J9 \+ F
ScheduleImpl schedule;' H$ `" q. J7 D; x$ H
ActionGroupImpl actionGroup;
) |2 {0 X: s! L8 p, R ListImpl list;" d8 Q$ Z2 \( X, P |5 G+ n
char Id = 'a';
6 c* @& ?) {/ m8 X
5 y+ T c- f) l' Q ActionGroupDemo(Zone aZone) {
. k: ]0 Z) F& W0 x7 M, h: t super(aZone);9 {. N6 [! [; h( S& M9 _
list = new ListImpl(aZone);& u. m: l1 W, b( a# O9 e
swarmSetp();7 n2 t1 O* F2 T R3 B
actionGroup = new ActionGroupImpl(aZone);
1 U* x5 L3 p# p" K( k: Y! j schedule = new ScheduleImpl(aZone);
1 W% ~* B8 B4 |1 ^3 O' L try {% s. J4 k* c$ P7 r
Selector agentSel = new Selector(Agent.class, "agentStep", false);% y1 l7 V Q) L3 n4 \8 v8 o( a) e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) S& |6 I! ~# y: h1 g / }/ z8 x7 G. R# }3 t) |% g
actionGroup.createActionForEach$message(list, agentSel);! z* ?" s1 ]% {- I! t
actionGroup.createActionTo$message(this, swarmSel);
/ F% S4 m& T$ M. M6 w schedule.at$createAction(0, actionGroup);
! Y' k$ J5 c/ K% t2 |/ L, }5 X schedule.at$createAction(1, actionGroup);. M, d8 R/ R& i' V/ X$ j
schedule.at$createAction(2, actionGroup);) j! Z% h2 r+ z4 y, M( W+ V+ v/ O& |
4 e: D& W$ U! O3 V, `6 [
} catch (Exception e) {3 @! e2 G i! [+ G; L+ e/ m
e.printStackTrace(System.err);" J- }+ l9 g8 z6 t7 v
//System.out.println(e);
# s7 |/ L6 g! a& ~ System.exit(1);
# W7 t( o7 L+ W4 z }# v( d6 u( H, J5 R, k. f7 x& q
H. s% ]6 v) T- W) L4 e
( @; T0 d2 B( `0 O+ c( y/ l }$ F9 k" D% d* m+ Y
$ Q- F4 N( z3 m' u' {+ z' } private void swarmSetp() {
" B: Q. x$ s% @6 x# J; ]" M list.addLast(new Agent(Id));& ?; Y/ n) J* }
Id++;0 k* D, Q6 g1 q5 ] m$ P
}
3 ~! N' C v1 m, O
D, g y9 M/ N5 h6 r; N% n public Activity activateIn(Swarm context) {
* m! \: \/ @0 W5 k* u7 P' V super.activateIn(context);
5 o# Z2 v6 n @/ T schedule.activateIn(this);
$ |6 p5 J0 f; W" u( j$ s1 \ return getActivity();
) Q0 q% x0 Z6 T6 N( h+ _ }
5 z9 T0 L/ Q; T5 d5 W* r4 w- s
4 @' {9 j# f' ~+ u public static void main(String[] args) {
; o0 J9 t f: P9 V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 P3 f7 |. {$ n$ {. M& D* J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- l% c3 _) ?. `. v
swarms.buildObjects();$ O7 }5 Y6 b/ N9 W2 I* T
swarms.buildActions();
8 p) _5 H. G! F* j- M1 n swarms.activateIn(null).run();
5 a' @% p/ P. N% J6 I& V }
2 t( I$ ]" W! R# n0 Y' D
$ s3 D0 N+ x# q& `} |
|