|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: O( T6 H/ R/ ^; M. F$ H) }3 q
) r o* e; R3 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 H0 U+ g M# P8 p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% @4 w2 ^' ^! U7 a$ }. K @
swarm.SignatureNotFoundException8 O4 B1 Q& l/ q# B0 D- ~* Q
at swarm.Selector.<init>(Selector.java:76)( P* N" t! `6 y4 g: h6 h& w! T" G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# v# o4 `" Y+ i: ^) c7 @# u, O at ActionGroupDemo.main(ActionGroupDemo.java:67)3 _4 u c+ C4 T* @- p
% u0 T% P2 q! B. j" A& ?% ^
; l* a% Z2 p6 C) Zimport swarm.objectbase.SwarmImpl;, x% a2 @' S, D, p
import swarm.objectbase.Swarm;' x! b) I% V, s) T7 U+ R, r0 P
import swarm.activity.ScheduleImpl;# h1 H' Y+ O" e- s) v3 R X
import swarm.activity.Activity;
- c0 i" I- O3 Z# P( cimport swarm.activity.ActionGroupImpl;) y8 Y1 n* k% {3 j
import swarm.collections.ListImpl;
! e( X* y9 s1 f* R7 `6 R! N6 b$ r1 dimport swarm.defobj.Zone; ' A3 r% K: H, w: I% w
import swarm.Globals;" u* A' A/ h8 L3 Y$ V6 j8 [& h4 ~
import swarm.Selector;- `& J2 G7 T0 r1 H+ z) W
import swarm.activity.ActionGroup; / }( Y) M6 @) f: B/ i- s- U
class Agent {8 i/ I( Q, _- k! a
char id;
3 m5 o' h' Z" e* H. J r
; @' d9 `- P6 |8 \ Agent(char id) {
$ g7 N5 c9 h2 ]+ w6 F! z) D this.id = id;
3 [/ m; [" a* r! J" E* R& z d% S }
4 y! B! M- _, I. n* {- V7 X4 h$ |" `4 ` C) f# O
public void agentStep() {# C' z1 @( p2 o6 I
System.out.println(id + ":" + Globals.env.getCurrentTime());
. H2 \% B& l. y" M" o }
6 d/ v/ [ ^8 g' P& d}+ s# k7 W i# `) c/ o2 G
' s. J/ t3 P2 i
public class ActionGroupDemo extends SwarmImpl {
6 G1 m" y1 k! r2 d5 I$ o. X. o( m* F ScheduleImpl schedule;5 P. F9 ^2 p! U$ G) l2 o: g" \
ActionGroupImpl actionGroup;" {3 q3 o6 n+ L. H. s
ListImpl list; C4 i4 r2 {! @$ x6 e- P
char Id = 'a';2 a5 M0 a4 c( ?! I- ], ?
$ e$ n& y/ ^9 r8 p ActionGroupDemo(Zone aZone) {
. |9 {2 A n! l$ H8 f' B super(aZone);
# P9 g5 [) `8 L6 Y: }! k: }; a3 i7 ]; `( P list = new ListImpl(aZone);( z6 m" L! _0 p
swarmSetp();
7 K4 L$ z5 X y4 H. q actionGroup = new ActionGroupImpl(aZone);
/ J6 \: C7 ^8 a/ n schedule = new ScheduleImpl(aZone);
) s! K( @9 ~7 o$ W try {
3 B! \" L6 @* A: o Selector agentSel = new Selector(Agent.class, "agentStep", false);
* A. \% @) S# o8 X( d5 t9 g Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& W N \5 b6 q, {; ^& f" y z4 @
2 ^) U6 Z+ b0 M+ Y0 J/ A
actionGroup.createActionForEach$message(list, agentSel);
( {5 ?( [; d0 E3 x6 g' v actionGroup.createActionTo$message(this, swarmSel);
% `" L6 s! \# i, x @: ]; t# t' O schedule.at$createAction(0, actionGroup);1 \& w% C5 A9 W
schedule.at$createAction(1, actionGroup);
# K3 w9 A. `: k0 X0 J+ P& K; L/ { schedule.at$createAction(2, actionGroup);
( o6 V) A( p8 k3 R c! A }2 F3 C
+ c8 i: `/ Z/ s8 v: H& G } catch (Exception e) {
0 O0 ]( }# e" F5 P% k/ |( E8 B e.printStackTrace(System.err);
) \2 A0 ]$ X( D5 `9 S( N% F( ] //System.out.println(e);3 z% p! N5 H7 o2 F
System.exit(1);4 c; y2 N& m( W) ~
}& @* i! t, H9 O) D3 ?6 }& F; j
" b5 D3 T& |' [6 r
7 t- r8 N1 U. U0 q1 J1 K8 i }
) {: k1 s8 j6 m( Q/ k* { z3 C5 O# i! |
private void swarmSetp() {& r, @+ N0 x3 R! P8 k$ P+ y* B
list.addLast(new Agent(Id));% ~& ?; \) d/ `& ~8 ^
Id++;3 y3 G9 Y) a' w% P9 p& _
}3 O, Y$ U& C/ x' Z! x
5 u( j, ]. O( o. [ public Activity activateIn(Swarm context) {- E1 I0 |; F% N; J. i4 @0 F' |) J1 d
super.activateIn(context);
/ S7 Q5 s" j# w# r schedule.activateIn(this);
% t: H, B, P7 A: u& G return getActivity();) `+ O* f9 M" ^3 @/ E! |0 F
}
~' X* k# g& x5 p. N. F4 |0 M! I3 P( ?$ n( I" G' T
public static void main(String[] args) {+ X8 P, Z0 A1 D8 S' P1 o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) e& h3 s& t, A; z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! B! O: {+ h* ]0 D: z; } swarms.buildObjects();
0 b& }& Q$ _+ E8 G3 G swarms.buildActions();( ~6 t4 O( {3 D! b5 H/ ^8 C5 l6 C* ^
swarms.activateIn(null).run();
; [2 [" c5 Z& Q8 S# g5 G' c }
9 z4 _8 m: t8 b# q' k, o( r5 R" R* y1 {. ~0 P7 |0 h- \
} |
|