|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + B/ s" a$ Z( u; Q& e3 R. k) } h8 `
/ j6 ?4 Y; K4 z+ W$ H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 ~, Z2 i/ R# M- _# X' O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. X& Y6 m) _2 M) v
swarm.SignatureNotFoundException
' a: g& [) }9 ~# L% ]% @ at swarm.Selector.<init>(Selector.java:76)4 c1 S" R9 k' R7 K8 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ E* [: O4 B( z+ s* M
at ActionGroupDemo.main(ActionGroupDemo.java:67): r, _( ~( k9 y8 h& {
/ n' v/ ?# H' t# `4 K' d
2 h$ H, E* \+ O# [) B0 o: f W
import swarm.objectbase.SwarmImpl;
, W7 L# b: T2 b4 ~import swarm.objectbase.Swarm;
5 h& y9 q3 `4 R( B3 U6 |7 h% oimport swarm.activity.ScheduleImpl;/ M1 Y0 `' a5 M8 X
import swarm.activity.Activity;6 [! q% u. X6 a& _* T% s
import swarm.activity.ActionGroupImpl;# T1 B0 ~/ d; O1 a
import swarm.collections.ListImpl;% v- l5 {' ?$ Z5 A
import swarm.defobj.Zone;
6 d6 R" {7 }. W, f+ }5 Q/ Fimport swarm.Globals;
5 {! `3 c# L: Vimport swarm.Selector;1 }" [: ~9 b3 B5 p# `9 g
import swarm.activity.ActionGroup;
0 I9 j9 F7 d- h. N; g0 b pclass Agent {7 E3 A% K4 F! R
char id;0 f1 r% g; k9 U/ _. ]6 G5 I& X3 Y C
0 Z! ?/ V+ X- G1 G+ p9 ^0 b
Agent(char id) {
8 J. t- @: ^& b& W) z+ T) w0 k this.id = id;6 }4 t; ^+ N; F" i8 |- q; F
}
4 G- O1 G9 }4 I$ D' d9 l) W4 R+ d3 ^6 f: g1 D: J
public void agentStep() {
& Z }' M8 |1 D; U+ N System.out.println(id + ":" + Globals.env.getCurrentTime());
/ L8 L W1 }- r* X% |/ V8 Z) p }
* v" O7 V2 v$ N+ \; d( J}: v; T5 f q+ L% A; X
3 b) L6 {5 ^9 o+ X
public class ActionGroupDemo extends SwarmImpl {
! f/ z; v0 W- O ScheduleImpl schedule;% Q3 m' N8 V6 a. f& l* x% {7 v
ActionGroupImpl actionGroup;
4 b! j ^. c9 z8 a2 C! E+ T ListImpl list;0 ?& q. e/ F" j `1 s8 X" a
char Id = 'a';7 d2 a) H: G1 I: _/ x
6 G( O& F8 y; a K# T ActionGroupDemo(Zone aZone) {
! d4 q" O7 C8 e) W super(aZone);$ M) z0 ~* v# {1 Y" Y3 _$ p
list = new ListImpl(aZone);
& ]" C, E4 Y; _ swarmSetp();3 m; i& X, l3 T: F% z5 j. S
actionGroup = new ActionGroupImpl(aZone);
+ | ?; U$ A+ H+ \5 w0 I schedule = new ScheduleImpl(aZone);) }- g5 G) X5 [% k4 f5 t3 j8 N9 j
try {; D% E2 V5 @+ s
Selector agentSel = new Selector(Agent.class, "agentStep", false);- {' o" T$ x+ G d% n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 D& q$ | p2 [. N5 K9 H
! M. f9 Z- k3 u2 m2 F actionGroup.createActionForEach$message(list, agentSel); X! Y1 ?: T7 v) S1 s) r
actionGroup.createActionTo$message(this, swarmSel);* S4 K1 r6 o: R4 U
schedule.at$createAction(0, actionGroup);; i& h/ p0 {+ `* j
schedule.at$createAction(1, actionGroup);
. I) c$ K1 S& K9 [ schedule.at$createAction(2, actionGroup);/ K4 ~. s* e- J" H: T' i# Z- x
# `/ r8 Z& K$ l9 A( X$ ]' D5 m
} catch (Exception e) {
9 {3 O/ Y7 ?3 ~4 Q8 c. b& e' F' j e.printStackTrace(System.err);/ E C5 H. m5 X; a( f! q
//System.out.println(e);4 G* y0 C6 z0 d' |' t
System.exit(1);3 [$ k" d2 K/ [+ s0 I( u
}5 N2 F' p+ K: o3 O9 y& [
2 u8 p( z' C$ C, P1 A, E: ~
% @ U8 y# `! U/ m( r
}
7 g. h: h, y% L2 d% _6 J- }( s: A4 W" d, B8 k
private void swarmSetp() {
3 l" o7 H0 G3 ]$ V: g/ { list.addLast(new Agent(Id));
* f& O! ]& N. r6 q9 }1 K8 x# [ Id++;
7 k+ C% h9 @% j; ?, g }* n6 \9 ~2 p0 v8 {3 g7 w
. R. E. _2 g" {* t7 c- G
public Activity activateIn(Swarm context) {0 w, h& P* v6 N9 {
super.activateIn(context);
, a$ D, V+ _, u, s; e% o% y( y W schedule.activateIn(this);
0 B; W2 r ~- g* x; g! N: T return getActivity();- _8 q, s% I2 B0 _, P
}
. H {9 q7 D' l2 q6 m9 M$ Q" O h" ^/ f- b4 A) X
public static void main(String[] args) {: M+ {: j! y. Q; J
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) M) P- h3 |! ^2 G2 c
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 G* ?7 _: f" k6 X" g swarms.buildObjects();
4 o' d& g3 X+ @ swarms.buildActions();
2 Q+ E' l8 i- s0 J& U+ h swarms.activateIn(null).run();6 J# `. W* U' O/ c3 T) v- w
}, X3 \- Q& T3 h4 P* s
9 ]1 o, E8 [/ X' [} |
|