|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 T& ]. D+ b1 Z. M$ m! v2 T$ w6 V( l/ c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
J/ `! G- h% |( ^* I2 d8 T# X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 g ~: j! n$ ^1 C% F* V' G) v
swarm.SignatureNotFoundException
6 I& z" T3 `0 V3 E8 J% p at swarm.Selector.<init>(Selector.java:76)
" W! M9 O) d% G& M( t" f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% J0 l9 k" K& ?* k; h at ActionGroupDemo.main(ActionGroupDemo.java:67)
. [* j/ U5 z+ _) c9 e* u9 m/ T
: y5 ^! v3 e$ V# @& s. s
, ?0 W9 s. c$ B5 K! Eimport swarm.objectbase.SwarmImpl;
3 R. o9 k- ?4 K# U3 D9 X1 p# }, q( Yimport swarm.objectbase.Swarm;) F) e$ r$ ~! Y( `9 ~! Q
import swarm.activity.ScheduleImpl;0 w, Q3 r# o+ [0 M) Y% N
import swarm.activity.Activity;
+ }1 a2 z% M" F/ P" fimport swarm.activity.ActionGroupImpl;
( N2 } f! d! \. d7 Ximport swarm.collections.ListImpl;/ A, |: {8 W0 P E0 e0 p# [! F
import swarm.defobj.Zone; 5 x+ O0 P) M- s9 `
import swarm.Globals;
9 [0 p$ p- d. rimport swarm.Selector;
4 J- d3 O# m7 k: ~* F, Ximport swarm.activity.ActionGroup; 2 Z0 S v$ a. ~; X; W+ _
class Agent {
# t1 s' e; H3 B' O9 Y char id;
+ y# [- n1 [7 ~& A3 C7 y7 x# `/ d" r; m
Agent(char id) {
2 x, E; d6 n9 U6 Z9 [% \ this.id = id;5 R$ b- [" f- V. W$ f
}
7 x. v" G* X1 w0 D! z% ~0 G" [, @1 d0 K
public void agentStep() {
( ?$ v1 `7 j5 `* H' Q System.out.println(id + ":" + Globals.env.getCurrentTime());1 ^2 p' h6 N- t$ Y
}
" |) Y& F! v* _}4 ^# I2 W5 b/ r, @4 R4 e5 L7 z; t5 ?
4 v! V8 R9 a3 W% Rpublic class ActionGroupDemo extends SwarmImpl {/ m% ^/ Y# Y0 d N' Q1 y
ScheduleImpl schedule;
1 l0 J( C; n* X: o' ` ActionGroupImpl actionGroup;4 g& G+ ]/ C/ r
ListImpl list;3 x' g' H7 m5 |) L
char Id = 'a';9 M, Z* G0 W, q% k7 c7 d
) {+ w/ \( v) \1 P8 L" s; x# l ActionGroupDemo(Zone aZone) {
$ m: j6 A2 o+ T4 \0 r1 Z) q* f1 F super(aZone);6 \! s4 ?* A4 Z
list = new ListImpl(aZone);
9 I% x) g( e/ N" O9 e3 g1 D/ c swarmSetp();
) _3 E# P' L+ R% Q3 ~ actionGroup = new ActionGroupImpl(aZone);0 \1 e7 R, F3 L0 {; \$ c* U
schedule = new ScheduleImpl(aZone);
. }% Q* Y$ a8 k' q$ T- Q# B try {! s' F8 _0 L4 S* L$ D
Selector agentSel = new Selector(Agent.class, "agentStep", false);. M! K4 v) T5 p' L3 F) m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 }7 a$ I8 i' Y5 I
% p5 w3 K* B# z! T% P
actionGroup.createActionForEach$message(list, agentSel);
2 m8 `& V; {9 C" n# l actionGroup.createActionTo$message(this, swarmSel);
$ c/ P1 q9 t' j+ {' V) ~6 }; Q! R schedule.at$createAction(0, actionGroup);
; q& f( K0 m# [$ p9 z schedule.at$createAction(1, actionGroup);9 x$ v, r5 j) ^/ e
schedule.at$createAction(2, actionGroup);
_; a4 N* L; |7 C5 q& {) S* k4 \* ^' Y! p5 j1 t* Q2 y; T
} catch (Exception e) {
: u" R: K+ ]# e! d6 _ e.printStackTrace(System.err);
+ G- R7 n* Y$ F% s! ]- l //System.out.println(e);
9 g& H2 B. T- `, e. z6 F3 D8 m1 t. m System.exit(1);
& y! U$ l* t( w; ^) K5 I% ? }, p( @, p E8 J; s+ t
4 s W7 F" i( y# y; {. |
; [) S6 D, ~& W+ I( \' T$ W$ `8 ~ }' X& I6 x( a4 \1 ~) }
" N: O5 V; L, n! g. Q9 X private void swarmSetp() {: [; H. [' ]' x/ B
list.addLast(new Agent(Id));9 H( L8 Y; ]6 i ]
Id++;
1 r( G' E8 X5 P6 x5 @ }
. X! d# C) J0 d/ L- a8 H! b- l
& g5 {: L1 y5 L# q( g- d' @9 ? [ public Activity activateIn(Swarm context) {
2 s- X8 ^: ]4 z" G8 ^ super.activateIn(context);2 ?+ V+ @( K6 D! [$ \5 i/ C
schedule.activateIn(this);9 ]2 K% d. ?, `" h) T( _: l
return getActivity();
6 Q# [/ }( s1 S& x6 d }
0 u; a# p( P6 g w" B9 z" s/ S* n7 W8 N0 A# o- H: T
public static void main(String[] args) {
( O- x5 J8 w4 ]/ E- _* W3 T t( q- f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 u2 o1 b, `3 ~/ b+ ?7 g' `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. P Z5 q' d# \1 T- } y5 K( ^ swarms.buildObjects(); y% L) E4 P0 h$ z' T% A
swarms.buildActions();2 |" x% `) V) D3 J
swarms.activateIn(null).run();' ?* J- z* Y7 r L
}
2 v( J5 r! D L& p4 o) @4 f8 O. v7 B6 j7 q( l4 g2 h
} |
|