|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * g6 d! C+ ~& m0 N/ A4 f0 |
/ P# D) M# F! g( d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ X0 s! L( F+ q( H1 l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 \+ A0 m, K% P' Z) w+ i1 h
swarm.SignatureNotFoundException
0 h+ w$ R3 u: ~3 q0 T, O at swarm.Selector.<init>(Selector.java:76)/ j1 _6 }; |- h! { E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- l6 F* _4 P- k. S
at ActionGroupDemo.main(ActionGroupDemo.java:67)3 G, j# n) [# n% i. T
5 O' _& K9 A. b, j
* s+ \9 l$ `6 M* ^5 Q6 J
import swarm.objectbase.SwarmImpl;
7 E1 u. G1 d* ^) O! x4 t* r: g. G8 z& mimport swarm.objectbase.Swarm;( g% Z7 h( q' r: ~& r ^6 J% Q
import swarm.activity.ScheduleImpl;
& Z# n. J/ D3 i0 q6 nimport swarm.activity.Activity;
0 a& m4 {8 C) k" V( ]$ Pimport swarm.activity.ActionGroupImpl;
X; i2 T7 s4 U% u1 b/ [import swarm.collections.ListImpl;0 a$ I( b% O9 j* H
import swarm.defobj.Zone; ' H/ d! ^7 x( e4 ]& Z
import swarm.Globals;# v; t* Q9 \' d) U2 J- g% d) {
import swarm.Selector;9 r( b; u7 C' A6 i: U5 Y# z+ D
import swarm.activity.ActionGroup;
7 T7 w2 b- W. y" t/ Vclass Agent {
0 Y& h4 s: G7 e char id;
3 P- k o( W% a6 [: a7 L u$ t o/ M
Agent(char id) {
, i5 C* b" C, k this.id = id;' l3 ] w, k( m4 J; L/ Y# A" D
}
* l2 ^6 T/ \$ L$ b& h
2 ~* a: n' m! ?( n public void agentStep() {
: c! _3 ]) B- |4 c1 C. u$ {3 e System.out.println(id + ":" + Globals.env.getCurrentTime());! Y$ I) Y$ ?) j
}; C8 r/ m9 Q5 l4 x; k( O/ v+ M9 m
}
& Y N9 I9 I0 @) ~ h+ f
+ h- D* r0 \! h Q5 h" ?. E5 n- W/ Cpublic class ActionGroupDemo extends SwarmImpl {
! g8 q. y$ x+ r8 @3 X! J ScheduleImpl schedule;' C4 B, W. u' |( X8 f7 v
ActionGroupImpl actionGroup;
# F; p7 G( l7 U ListImpl list;/ i% E. L7 ]4 g$ `# @
char Id = 'a';
. g \2 s @0 _; `8 P8 H; m- I0 N; E: Q+ e* Z
ActionGroupDemo(Zone aZone) {
& _* a$ W6 f, `, _" V) o; ] super(aZone);% h* \7 y' b; a1 ]+ D3 ]
list = new ListImpl(aZone);
5 ~+ v. }3 i6 I6 h$ `7 D3 F, `' ] swarmSetp();& \# e) x c& U5 E: n D
actionGroup = new ActionGroupImpl(aZone);+ l5 I8 P# l! X# B) Q9 ~
schedule = new ScheduleImpl(aZone);5 D3 c, ]1 k) |- s8 q9 S
try {8 O b @1 \& ^* \' x- g
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 ~# e" }7 d' X8 l% s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" O: l% x1 s$ K, _9 ]9 c
1 G: I* Y% T2 S1 l3 ^ actionGroup.createActionForEach$message(list, agentSel);+ x$ Y8 F$ W# {/ b
actionGroup.createActionTo$message(this, swarmSel);1 n. A: A4 R# N" B8 l7 @' K
schedule.at$createAction(0, actionGroup);
3 ?5 z6 w# ~0 S3 ^% a* |6 } schedule.at$createAction(1, actionGroup);
4 d5 D; E" C7 b schedule.at$createAction(2, actionGroup);) M7 `( w, d5 d
5 E8 N( b e+ S# x; K3 N } catch (Exception e) {) l; {* \/ r" h2 o6 ]* `+ A
e.printStackTrace(System.err);
* W3 J l7 N, K+ [' Q7 e) u //System.out.println(e);
( Q2 H. f2 a) j8 r System.exit(1);& o$ y$ ]8 b) W
}
# o8 r7 A- V# |; O6 b: d9 u
) C; N% U2 i* {5 E# w" v1 Z% K% G0 Q/ `; g
}4 {! Z! F: l% X& t& ~
9 L( M- Y3 b1 H5 H
private void swarmSetp() {$ o4 d% | @" x. { P! P" L
list.addLast(new Agent(Id));3 Y) u3 U; \% q& Q. R$ e! V
Id++;
7 z2 {* o: c. [8 y' l6 w0 D }6 U% a# k. _+ y, \7 O1 ~% q
$ z$ k5 Q6 A0 V8 m! f6 ~1 H5 g public Activity activateIn(Swarm context) {
* _+ j9 q8 {% O+ o1 ?/ J- l( l super.activateIn(context);
/ J, o9 N# a4 q% V( ^& Q: J schedule.activateIn(this);- g- ^/ n& m1 u
return getActivity();5 N9 \; r! D1 H' r
}# x. Z! N& u/ \# X J
% {2 }5 y( ?; j7 k
public static void main(String[] args) {
O Z$ C* ^1 t/ Y! N. { Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ `+ R$ J' R2 Q/ i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* A) J2 e' v5 M) [6 j8 ~/ Y1 b: E% O
swarms.buildObjects();
3 D% w: T. l9 f' b4 c8 t+ B swarms.buildActions();
l5 ~3 i6 f- I# b+ h! f* d swarms.activateIn(null).run();
0 |( N3 ~* k9 V4 m. B8 F }. _: T, G2 _0 i8 o/ X2 z: K3 y0 p
2 V. A7 P3 g) ~} |
|