|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 }' x' e$ X# G, W7 p% f1 W( Q5 z
; i2 T/ S2 v& T u- N: T7 c' O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* {" h3 P# ~- s! k& W' \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" x N7 Y2 c/ \swarm.SignatureNotFoundException. a$ I0 e. |& E" E s
at swarm.Selector.<init>(Selector.java:76), c a, d4 _4 g2 j" t
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, p& g5 @; n" g# r$ l# [# S at ActionGroupDemo.main(ActionGroupDemo.java:67) G6 E- ~4 `/ w/ `: T
6 V( N/ w. |7 c4 z: H) \- n, r6 ^3 d. w; B2 L, D
import swarm.objectbase.SwarmImpl;
* N/ M0 q$ B7 I- S: kimport swarm.objectbase.Swarm;; {; a" L/ T. ^
import swarm.activity.ScheduleImpl;( i& @$ G4 T& _2 {0 |6 Z
import swarm.activity.Activity;
" Z9 |- k/ e/ b' m9 }! `& ~7 zimport swarm.activity.ActionGroupImpl;( [! j. ~, _; u5 \+ R
import swarm.collections.ListImpl;
$ u8 ~. U* H8 L5 bimport swarm.defobj.Zone; " E: ^. m* D" y& B- V
import swarm.Globals;0 n2 G: H2 I% i3 C. X) C5 l
import swarm.Selector;
: M+ n" c5 T- N+ I9 \( g5 y5 q/ ?import swarm.activity.ActionGroup;
+ G2 v) K7 k% V- R7 z2 Vclass Agent {) W. O( I- v ~4 J
char id;
' ?% w0 T+ {3 v3 Z6 ~) X
0 M+ y& H( @ J2 N& d Agent(char id) {
( F- M# a: O9 |5 y this.id = id;
# S$ X/ T1 n# }# i6 \7 `( T* J } s3 a- y7 M5 ]" o* |- M
) }9 v- I' S% m/ ` public void agentStep() {) P( \2 u8 x7 \' q/ t+ K% h* i0 H
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 P6 i" ~% A7 E3 W$ x$ B# q }+ K" j0 Z1 W4 g* u) e$ C+ ^/ g
}
+ T D) @- w5 w: f9 E5 w$ I) [' Q+ q+ s& ~
public class ActionGroupDemo extends SwarmImpl {4 f* B# b4 G0 T# `0 d$ G
ScheduleImpl schedule;
) d3 E& \, d" I6 F9 \ ActionGroupImpl actionGroup;+ v$ W, B9 P% z, k7 [! f' p, c
ListImpl list;
1 @1 u+ B R, ]+ y/ J( H- f* C char Id = 'a';
6 R. D' }0 K1 {) A6 G+ k# b# c5 `: i* W) G
ActionGroupDemo(Zone aZone) {- T7 `* H6 a$ A% {
super(aZone);% F) T, b2 m" g( `& {8 V6 r4 R
list = new ListImpl(aZone);) R5 n! ^. Z, v" k8 |
swarmSetp();
' b! B8 z1 W6 H7 ?/ m2 ^ actionGroup = new ActionGroupImpl(aZone);/ S2 ?- F7 r8 S0 ~% j a
schedule = new ScheduleImpl(aZone);9 p# i: I6 G$ T0 |" t
try {. `: u, z$ h- K5 F: g. ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);
: U* f' r9 e. F' [$ U8 p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 I* X# h* Y0 \ # s6 H) R: d& |) }
actionGroup.createActionForEach$message(list, agentSel);
2 j# e4 h- y5 S2 h6 g# a% @ actionGroup.createActionTo$message(this, swarmSel);+ g' T* I) `) o; o
schedule.at$createAction(0, actionGroup);% a" y, e+ d" L O6 i' n2 o
schedule.at$createAction(1, actionGroup);" P# i5 n: V" _0 J3 k: `7 g
schedule.at$createAction(2, actionGroup);
0 q1 c3 h8 t* \5 `, A
$ u# [* O$ H- V6 h% }6 ~* A& A } catch (Exception e) {
5 V- A3 r- R- E e.printStackTrace(System.err);
. b6 J2 w( H( [: k J6 x; p ~0 h0 ` //System.out.println(e);1 e5 z* D: D# a4 v
System.exit(1);
& ~: d2 u; ~3 ~. d7 x- E } y6 n5 J9 g! J5 s! G1 g
0 W/ Y2 E' `# C( I% A4 o( g
: V. `' }5 N& G% E3 H }; y( A0 P) x" N
3 O" h( S( S( X
private void swarmSetp() {
) H9 K) J& Z7 {3 F& U* o' Y( s4 W list.addLast(new Agent(Id));
: ^8 J& ]0 d2 o6 o+ } Id++;
0 l1 {! z/ W% }1 ^+ d. P" L }
- J# x. C+ T* z/ A1 \9 A- P8 z. U n6 J! Y: J9 l$ |$ ?6 t2 s5 C
public Activity activateIn(Swarm context) {
# J' S: H7 ?" ^7 O% b8 @ super.activateIn(context);
/ U& O( C: Q# o' L5 b/ \' | schedule.activateIn(this);
. u% A% z3 j7 @+ y4 X% G return getActivity();, H* i" ?/ ^0 J" {; L3 a2 N
}* K- P4 M& i- H5 L4 U7 U
, }! T V7 Z& ^
public static void main(String[] args) {
# f' C9 z7 Z% r% ^9 S4 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 h3 X. _: M* ]- m( d2 Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! l! k% T- B- V1 L
swarms.buildObjects();
^8 c1 H* t0 K8 i, p) V0 f. ^ swarms.buildActions();
, A i, x6 Z* U0 o" g( f% a6 e swarms.activateIn(null).run();' F5 n0 S( m" T# C4 ?
}
) n$ m" ^9 m0 v6 E# l+ }
* N+ a4 x1 q& p0 X; ^! F} |
|