|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; P) T% u3 P$ q2 X5 F9 D% g$ M+ |6 p+ `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 i2 B) d( V# G& {$ t% r# z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& `* F0 w- y* y
swarm.SignatureNotFoundException
N9 I/ H# x9 g7 _9 t: o4 Q at swarm.Selector.<init>(Selector.java:76)! N. t3 f8 F" ]: O$ A$ H1 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' J5 \$ n$ G# h7 d at ActionGroupDemo.main(ActionGroupDemo.java:67)1 o1 N+ _! U1 d6 _& d+ y2 o
5 J8 ~& f, g ? B7 [0 o4 V' e; {* @, W# k( x
import swarm.objectbase.SwarmImpl;
8 r( l6 V5 ]7 f" qimport swarm.objectbase.Swarm;
" g" G, t& e& l; X$ [) Dimport swarm.activity.ScheduleImpl;$ H! O3 n `4 C1 _! r
import swarm.activity.Activity;2 b7 F2 w; J! ^/ b
import swarm.activity.ActionGroupImpl;: {, T' W' o1 F0 f# h$ s' ?
import swarm.collections.ListImpl;! o( e1 Y$ m: l
import swarm.defobj.Zone; - ~ s; x# U/ N2 l4 E% e4 b8 `
import swarm.Globals;
. I. D1 \1 c& G! himport swarm.Selector;" [8 K6 D5 }: d7 t( v# F% z
import swarm.activity.ActionGroup; 8 }( | M2 }- r2 ~! R5 M
class Agent { {0 v8 t. J; e' c
char id;
2 ~" }& ?% b$ d& n }# V
2 x$ P5 M) D- a$ {9 g8 T! V Agent(char id) {: R3 e9 a' R' }" b
this.id = id;# J k0 O: `( `/ ?( ^9 p
}: l& z/ v8 ^5 i! u4 }
S% `) m# _- X7 z; Y! m4 f( w public void agentStep() {3 r9 O( Y, ]7 ?9 H9 Z* K
System.out.println(id + ":" + Globals.env.getCurrentTime());2 ~5 d6 V/ Y: n. h; u
}* t0 V7 _ E+ R+ n1 y8 S2 ~. u4 x
}6 f/ P' H7 i) K; j+ x' G
; w: u( ]3 V3 a5 opublic class ActionGroupDemo extends SwarmImpl {. B$ J0 Q5 M. {; ^( J( U9 ?
ScheduleImpl schedule;
, U: Q' U: p/ [% d! F ActionGroupImpl actionGroup;, Y; M: `5 B9 R2 c" ^, }3 C. a
ListImpl list;
& w( a9 {8 V7 Y" b; w char Id = 'a';
' `' t' a; a) U4 f8 m/ w3 _2 K( W/ ?, ]# ~6 R
ActionGroupDemo(Zone aZone) {
+ `9 N: Z# f3 H$ n. D2 h super(aZone);
- k. @+ N J" q, W: n2 F# \ list = new ListImpl(aZone);
, |7 F9 Y* a; G' w$ _. v swarmSetp();
( j( G3 i& o* A3 L1 Q. s actionGroup = new ActionGroupImpl(aZone);
" G6 U$ Y( U, | schedule = new ScheduleImpl(aZone);' A7 l2 x9 u1 L9 C3 e% K
try {5 S! g! S* U* V6 J0 U" V, v
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 E( d0 X" v/ ^! ^# J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: i, o# }$ W: w 1 f1 j# _0 s* l9 }: U# M% ]2 s
actionGroup.createActionForEach$message(list, agentSel);
7 X( S: s) F- v- _/ F; e actionGroup.createActionTo$message(this, swarmSel);
3 [% C; t: a0 u( z. v- A0 \( w$ Q schedule.at$createAction(0, actionGroup);
* V$ z9 Q& i7 _" E* H schedule.at$createAction(1, actionGroup);' n+ j4 X2 |* a ^
schedule.at$createAction(2, actionGroup);/ D5 O* {# `5 _2 Z+ `& q
! B; {6 g- D0 X } catch (Exception e) {8 v6 q5 B1 I' n4 {7 D' P
e.printStackTrace(System.err);
# ?9 m9 `6 I$ }( g q& ~6 ? //System.out.println(e);! l# A. x* g q6 O' Z
System.exit(1);7 L) A. |/ C2 j: a% b$ u. N% w: B/ c
}
" ~2 ^ }% p+ y& I1 m( O' ~7 o+ h+ d9 d: G( C
; G, n F. ^1 s( q% R; M, s# J }
H; r* k6 o- x9 `+ o& y1 q" L, U2 t# t' \: d% C
private void swarmSetp() {
' T9 f: z: i: f) b$ M- c# \ list.addLast(new Agent(Id));1 [% h1 d& P7 w: o2 \8 O, @
Id++;" u1 y9 y. w1 p6 N, z, b$ ~
}2 P6 x: E# x) z y5 Y; s
6 ^3 Q7 n3 o$ D1 E public Activity activateIn(Swarm context) {
5 v$ C5 f2 r1 E% T" V6 a& {/ d super.activateIn(context);" ?4 [' X' {' M
schedule.activateIn(this);
; S% Q6 t/ y/ }" b9 n/ F8 g% o" [ return getActivity();) y6 w* W8 f9 i4 m2 ]$ A: f
}6 S* w( h2 d- k/ } W
2 J# x% A6 W5 E+ i public static void main(String[] args) {
& e( N' F7 q5 X4 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 w! `) r. k6 d. n' [& w& U' \ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ z3 ?/ R6 [/ J/ T* }
swarms.buildObjects();( {. ^7 W& i7 B; }5 \ c @
swarms.buildActions();
4 u z5 a1 G ?- R+ G& c& @% v: M swarms.activateIn(null).run();! j; g4 i6 n3 k+ R
}
+ [5 N& l$ W4 ?' y% Z b/ i$ ~# }. ~ y* p; g
} |
|