|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # p5 l. b: c7 J
+ m% G- O3 Z9 } o! D9 t2 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 Q0 M3 o6 q, Q2 Q6 g( v# [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 g* R- K0 [7 ^1 r* s+ U
swarm.SignatureNotFoundException
8 H+ Y, }& p" ?- a) J2 M at swarm.Selector.<init>(Selector.java:76)
+ Q! v. l) ]5 y, P6 L) P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' u$ r7 t2 V5 i1 D$ j at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 e, U9 N+ h" ]# p4 R! O
1 q" H2 b% ~# f: v
' b: ?0 f" f+ @+ X& {. i |% jimport swarm.objectbase.SwarmImpl;
; s: V! F% L2 f9 Eimport swarm.objectbase.Swarm;
, ?/ M8 _0 P( B+ eimport swarm.activity.ScheduleImpl;
{2 Q- s2 B7 l2 u6 Y9 f! `import swarm.activity.Activity;
! j2 K, O- U/ L! v( Y' `( limport swarm.activity.ActionGroupImpl;$ U4 b) U# o! q5 R9 V
import swarm.collections.ListImpl;
' s I" Q$ b6 P' g" zimport swarm.defobj.Zone; - _+ C, Q' n- Q! E
import swarm.Globals; P( m( B) P7 V5 `
import swarm.Selector;
" |) M2 D+ H: Himport swarm.activity.ActionGroup; ' N3 O; t/ X6 `5 V% k
class Agent {% k" O& F/ w* N. f3 {' ]4 X5 i: X
char id;
1 u0 b8 Y9 s/ ?; f1 M8 U
5 S0 g3 a* d N$ ]2 j6 u5 T Agent(char id) {
- Q9 ~+ w2 b5 `6 j7 j" h. O' D: j this.id = id;, ]& `# S. V; n# N8 E
}
& ~5 T2 \6 _ Z: ?( ^
# n$ ?" Q+ i, k' a1 m# M* c public void agentStep() {/ i8 @( B5 C, K* H4 d
System.out.println(id + ":" + Globals.env.getCurrentTime());
& T- T6 f( f: a" _( Y# u, J5 \ }! _* \8 B, S- Z- I' v8 {5 C! J
}1 V0 i4 O& Z, p" Z. F: a# F7 \8 W
9 N+ D! u- w* Y" v7 L0 O1 ~ v
public class ActionGroupDemo extends SwarmImpl {
- r* z& U& K5 I4 S ScheduleImpl schedule;
8 f6 J Z% F. x0 X ActionGroupImpl actionGroup;
" S6 T( D6 K7 E' k' P ListImpl list;6 O$ Z/ L& [8 V; B6 B$ |( ~
char Id = 'a';
" z( I3 D) H9 F- G, x; ^) q2 _- \- j
ActionGroupDemo(Zone aZone) {2 ]' A; Q3 F$ G0 g9 Q
super(aZone);
_; ^; G& J4 R& h list = new ListImpl(aZone);
- Y$ ~' n" o/ n0 V$ N! S8 {2 `7 w swarmSetp();
y# K1 r, _; K$ e' \/ b8 n# w actionGroup = new ActionGroupImpl(aZone);( A: |4 }9 q& z, d' K3 h+ T
schedule = new ScheduleImpl(aZone);0 ^$ [6 _) | I; A! r$ q8 X, p5 {
try {! O8 w- b. a* l9 G
Selector agentSel = new Selector(Agent.class, "agentStep", false);- s$ T9 T5 @( m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 ?( N0 T+ h! O$ Z, f4 o. o. g: J
2 T( }7 P0 l- D8 F7 B/ j actionGroup.createActionForEach$message(list, agentSel);
3 w: o" O* Y9 m- x actionGroup.createActionTo$message(this, swarmSel);
8 g Z* q! F$ d: c4 _ schedule.at$createAction(0, actionGroup);
; |4 F/ H; Z* ]( |( g4 x% M schedule.at$createAction(1, actionGroup);
0 i6 t# ^1 y; @: [ schedule.at$createAction(2, actionGroup);
9 l( Y$ v& M8 _/ ~' f( P. k0 N7 i j8 v7 D; T+ O
} catch (Exception e) {
' x! o3 `8 f% A e.printStackTrace(System.err);, V3 F$ { s& I
//System.out.println(e);
) y1 q5 `. b3 t/ K System.exit(1);
4 }( o+ {* d9 _/ J: J& s4 z }
5 h Y4 x$ d* s+ Q9 F3 B8 H# a& L/ V0 C! ^! u- z
* @" Q8 p6 E! g& Q) Q) }
}5 W1 x8 v5 d$ i% H2 z4 W9 N p- k
) N. @: p& I% ]3 h6 x) K, m private void swarmSetp() {$ f2 Y( y% V2 \5 `
list.addLast(new Agent(Id));( A4 `5 Q) M. @$ M% U* U/ S* g9 g, G
Id++;3 c0 J' A, r+ D% e
}
3 T A9 e# ~9 O6 ]6 o% ~8 O" s: F3 }: J5 D3 _' s* N5 h% ^
public Activity activateIn(Swarm context) {
; ]: I8 a4 y2 ^: [2 ~( h/ ?" P9 e. i super.activateIn(context);8 r& j* R! |9 [
schedule.activateIn(this);) G! l: C( H' ]! t$ _4 T F! U
return getActivity();" I% t# i9 c9 m r5 g7 _, t5 n+ k9 ~
}
' n4 V/ ]$ y3 G' e+ E/ c/ i z! _
2 i2 z* a" U8 c L t public static void main(String[] args) {; R7 B; j5 j3 h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 h* F. K- p( R5 X7 b( F t% M4 r* u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# M* S. @2 l4 j4 B# J& q# Z2 c; C
swarms.buildObjects();
3 y4 p- O9 v* |0 | swarms.buildActions();3 Y. l6 t/ `% O( ?# b1 y
swarms.activateIn(null).run();
7 b0 a# ^3 @# _$ I6 e" e8 V& t9 E S& m }1 i/ ?8 y) E# K7 y1 C& Y. _7 |
& x c1 V7 `1 F5 g- D$ d
} |
|