|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# O1 D0 l7 O7 l/ o4 @( [( }$ `, h) g' e- S4 f! z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) L" Q+ ?/ d! S. r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ c; m' B. F1 N3 N# ?! f( p6 `swarm.SignatureNotFoundException
9 _! J/ Z+ ^* @& n. `0 h- W at swarm.Selector.<init>(Selector.java:76)6 w" @1 Y( O/ y6 {4 q2 d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: i' v8 U. w( W) G. x$ A1 G at ActionGroupDemo.main(ActionGroupDemo.java:67)/ S- m, F2 m3 F7 s. T
4 [1 l: J3 s+ {/ k5 _! T0 o
# O, Z- i7 y- D; g+ \- `import swarm.objectbase.SwarmImpl;
6 j8 [# s& j; Nimport swarm.objectbase.Swarm; E6 t& q. o4 e. D
import swarm.activity.ScheduleImpl;$ f! N: A9 g: X/ B; S. h: D( \
import swarm.activity.Activity;& | f) T( |; `# r, D; Q2 s3 R/ v
import swarm.activity.ActionGroupImpl;
7 N, w! z9 h1 c! u Z3 n1 _6 uimport swarm.collections.ListImpl;
3 d, m; l- e7 X2 z% L- ^import swarm.defobj.Zone;
6 R- R+ H. Y6 n. x2 H7 E6 ?! _9 Iimport swarm.Globals;
1 o+ i# s* g' `: L9 w4 Vimport swarm.Selector;
) @) b% l( j2 a, H2 `9 vimport swarm.activity.ActionGroup; ) w. p1 p! Q+ k/ D
class Agent {
0 `1 g. n. R" l char id;- Z4 }$ }- ]# F/ W( ?- g
; |9 Y, U9 r. T5 y Agent(char id) {+ J. r5 n2 @8 V% H
this.id = id;
& z: Z! b- Z5 k8 a; W. M: C }& n8 g2 ~8 q, \; t) v
6 w7 G4 J0 C0 G; R/ o4 c; t8 E
public void agentStep() {/ h2 t6 |$ C5 h- K: Y- y8 o7 ?# G" `
System.out.println(id + ":" + Globals.env.getCurrentTime());8 Z5 t/ c. `" S/ X4 \+ g
}
5 v7 P, p. T+ `4 K/ `5 q; w3 h}0 Y' C k8 _: s& ]- J7 I2 y+ i
9 T7 C8 _0 m$ m Spublic class ActionGroupDemo extends SwarmImpl {
1 p1 u2 u+ s( n& X8 c ScheduleImpl schedule;
' G. F$ N! a/ F- R1 J* e ActionGroupImpl actionGroup;
+ ]' ?. `( \+ J& s ListImpl list;. w+ b8 j% E' O3 @- o. H" T# @
char Id = 'a';
" k: L1 F9 }! o+ {% A5 p. T( c6 n+ I" k) q) t
ActionGroupDemo(Zone aZone) {
. ~( w3 j/ d) }0 \" _ super(aZone);
6 d+ l; S' J2 O" U5 F X; | list = new ListImpl(aZone);
- W; a L7 m8 [ c swarmSetp();
! O5 \) y3 m ] q6 ^3 h5 ~ X' @6 a actionGroup = new ActionGroupImpl(aZone);
Q* M# z# `4 G& R schedule = new ScheduleImpl(aZone);
% l8 k7 @ ^. W. X Z8 y- ~. \ try {
0 C5 U9 ]# S/ ~) P Selector agentSel = new Selector(Agent.class, "agentStep", false);
; G$ R0 G6 q" u4 l0 V N5 r( c2 K Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 [- u1 c5 `$ t! ^% i. v
, R) M4 Z" E# x
actionGroup.createActionForEach$message(list, agentSel);
8 Q7 k0 U! g% A actionGroup.createActionTo$message(this, swarmSel);% K2 Q- R6 D& R0 x' m" ]% ^
schedule.at$createAction(0, actionGroup);
* u* Q, l* o' a schedule.at$createAction(1, actionGroup);( i2 q! V# [1 t. M& Q9 y6 I5 |; T
schedule.at$createAction(2, actionGroup);
: u' A$ j" W- p6 Z" k* \' T: o L0 m7 Y
} catch (Exception e) {
4 l2 U& l8 y# x# S8 A' m- G e.printStackTrace(System.err);
9 r' a5 j( c1 O; C# |/ f //System.out.println(e);8 Q$ `: Q" x- Q' X
System.exit(1);
# j5 j' C# Q) I( v }
* K* V! c" g3 j! n! \" Y1 V9 h5 L
$ C, \& L) T2 G# M3 E# Q9 W7 L o" h5 O( _- ?8 \
}
9 ~* h# y5 H7 _) x* F! R
7 h9 `2 m6 @! S! m8 ? private void swarmSetp() {
0 A2 Z) E- o$ Z, @ list.addLast(new Agent(Id));' Z# Z: H: `' {
Id++;( Z3 @/ j& `. o' L! S7 p
}5 |' J! _" C$ n0 v' [! [0 ?
& J5 k- g0 U6 ?: s# g& S! c
public Activity activateIn(Swarm context) {
5 t5 X- |% s' @! t* y% I super.activateIn(context);
- B- U _/ |% n schedule.activateIn(this);
8 c$ Q+ R. s( C# W+ a return getActivity();/ P+ y& r0 ]% Z5 s* t* n
}
0 `( B# a; P& g4 B' N v( ?: ?( I+ s/ u, _- R+ v' T6 ~% ^$ a
public static void main(String[] args) {2 P# k7 E+ t' B! B( u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ B0 x" i* Q8 \, h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 y& T% @+ N' i; t4 ~" P swarms.buildObjects();( d$ H" n, V x# {8 ~. H7 Y3 m
swarms.buildActions();: s, | |7 j& ^% v
swarms.activateIn(null).run();7 ^' Y. G* w$ e% p8 U# M- S
}
$ p* c- f' p. M' _, s5 C, C4 e/ F. e; A/ S6 g, ], v5 c
} |
|