|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; O, r( w6 _& }; n) N6 \+ H2 q
. |$ v6 n- I M$ j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: W ~3 t7 a$ n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 P" `+ R- C5 a7 Y
swarm.SignatureNotFoundException& ]3 E5 Z, C' y# G# I
at swarm.Selector.<init>(Selector.java:76), e' [7 o5 v' V/ F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# Z( {# P0 ]/ j E
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 O% s3 I( Y1 c+ d1 c
5 e8 }4 F* K7 C$ m5 i! p; B+ p+ i
& r+ J9 H# H$ p4 W: c) Nimport swarm.objectbase.SwarmImpl;
* W; y- M, }$ q; Z' n+ R7 }% X: W& nimport swarm.objectbase.Swarm;+ h: Z- l. h5 {! p8 s( f4 @
import swarm.activity.ScheduleImpl;0 U& C4 @2 z5 G3 L/ Y X, _
import swarm.activity.Activity;# O! [' i# g3 ]! f* V. Y
import swarm.activity.ActionGroupImpl;
( `. F9 e. m; V: W( z- vimport swarm.collections.ListImpl;4 V: o: Y! x4 v* I3 q
import swarm.defobj.Zone;
7 D$ c# w1 b0 |import swarm.Globals;
1 S7 e) @8 K1 T" ~/ |. w3 Vimport swarm.Selector;
# S' V$ K5 ^7 F3 P7 @import swarm.activity.ActionGroup; 2 n, L' B0 A" ?0 Y9 k
class Agent {, T& `' `2 ^& @
char id;
: ~3 [* f7 A5 ~
* m, n6 \8 R2 [: h; X) A T( E2 w Agent(char id) {8 U$ z0 \+ V' ?6 Y* M
this.id = id;9 U' q% ^; a% D) l
}' t9 _) D8 o- H2 ?( C
" H- q& N$ A& N6 Y7 u& |/ m public void agentStep() {$ T; {6 D7 j( v" a7 V- ?/ f
System.out.println(id + ":" + Globals.env.getCurrentTime());
& u6 Q9 Y U, Y7 K }
4 c! |% D n' s6 ]- g4 N}3 B! I, g. D& Q6 l0 s# e
3 R4 P1 {) p1 v- A1 ]" upublic class ActionGroupDemo extends SwarmImpl {" e) q, F5 \, X) F1 [/ I+ Y8 A
ScheduleImpl schedule;
( c( a- R; M. J& Z) ^ ActionGroupImpl actionGroup;
3 _2 s1 t* n: D2 n! G ListImpl list;
: C( o8 C" h K1 ~, B9 J' w char Id = 'a';& f5 d5 |2 p* Y- z( s- U# i* r+ X2 C
) q! U; x) x! f/ H" \ ~
ActionGroupDemo(Zone aZone) {9 ]- `4 z! Z2 ^- T; k9 _
super(aZone);
9 J; }" {/ l1 u- l; H list = new ListImpl(aZone);- U. p. l/ Q% e" H
swarmSetp();
# T$ C' W8 F; W2 M9 }- H actionGroup = new ActionGroupImpl(aZone);
9 ? H: L' o9 }7 p3 K schedule = new ScheduleImpl(aZone);- j; V; C, t8 ?
try {# ~! e `" k# T+ I% y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
: M$ K1 `# w2 g7 B9 n0 S6 l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! E! k1 R B9 A- d! Z. V
* |' [ S" B7 g! R1 f actionGroup.createActionForEach$message(list, agentSel);$ ]' h5 j- C6 Z% ]0 d) ~
actionGroup.createActionTo$message(this, swarmSel);
, v; r5 S; O: }+ ~& s: P1 A schedule.at$createAction(0, actionGroup);3 Q0 A, _. x( M; B6 u% T# r' U
schedule.at$createAction(1, actionGroup);; s7 j, ]! G- h. U
schedule.at$createAction(2, actionGroup);
3 U& X' ?+ n. B3 z, Z$ P. a
1 k/ E; W' F( R' N0 r J8 S B) k } catch (Exception e) {4 A% X. V1 b- e' T7 i4 I
e.printStackTrace(System.err);
- H5 O: \) j( N, U, l //System.out.println(e);
, |7 v- Q _1 E- Q* |# H System.exit(1);
1 B# v; F; Y( t# n) I: ? }
* K; w% \8 [7 S% x2 q3 X B8 o7 D' X" X- S ]% u; |
. A. b$ T4 l! Z }- d- D: R3 K, k' r9 l+ }1 ]: X. Z
% A* W% u0 `* F! a0 ], G j7 F private void swarmSetp() {5 |! K8 w" B( n9 O# _" a* {! C
list.addLast(new Agent(Id));: n3 ?3 Q/ a: |' }3 |
Id++;/ X g6 ~2 C9 u$ u; r
}1 v* z j! L. C9 p% M- Q
$ ]6 A7 ]3 b% j public Activity activateIn(Swarm context) {" R2 K7 R3 d+ Y: h
super.activateIn(context);
- g9 y+ W& C3 @8 c1 }& f schedule.activateIn(this);
0 [; ], z/ C# Z! A+ C, \ return getActivity();
' k- u& d# e1 l" e }. _7 h% R. a3 q% s
. {2 @& N3 o: r# ?' V6 v" W& `
public static void main(String[] args) {
7 b) ^! ]4 X+ n5 |7 X, V Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ N7 ?; J2 E5 ~6 q u- p5 L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ a- s @! j. D' l
swarms.buildObjects();+ a) A- p4 ~- G% M' o
swarms.buildActions();: F6 w( K- w2 R3 ?: k
swarms.activateIn(null).run(); o" k. ?4 G3 u
}, p4 V6 h( x( u
$ u9 l/ z0 o0 R8 F: g} |
|