|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
F( x' K% y: \& K, q- } t$ u- ~# ?4 T( Y( Y* B8 r5 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- E; L& ]6 x3 J2 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% g' o5 x8 |4 j+ B F+ Xswarm.SignatureNotFoundException A2 `0 a& H E2 _2 L
at swarm.Selector.<init>(Selector.java:76)) a. H1 |# N8 @$ H8 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( c+ q8 X+ s" M' \ at ActionGroupDemo.main(ActionGroupDemo.java:67)
. W }2 C* E2 O8 ]4 W
6 A5 P) z: ?' p; o* s* }) O; ~. O- v# Q
import swarm.objectbase.SwarmImpl;
. \- g$ U7 A0 c W$ M% X6 iimport swarm.objectbase.Swarm;: n/ ~& N) ^& N. ^
import swarm.activity.ScheduleImpl;" X5 X- o6 J, d4 k6 b2 s" n0 ~
import swarm.activity.Activity;
) E5 l* r4 u$ |2 ~import swarm.activity.ActionGroupImpl;
. Q9 w1 m+ |: q! M9 Z! E3 _import swarm.collections.ListImpl;6 \/ Y. }; x3 ]( x- J* b1 ]
import swarm.defobj.Zone;
( L% |3 e. K4 L# l* A/ i0 N$ f1 k' aimport swarm.Globals;, g9 C; [4 h+ m- ?6 U
import swarm.Selector;$ d% g ~/ o- X8 z
import swarm.activity.ActionGroup;
# ~0 Y* k8 n9 R! S6 M7 d$ kclass Agent {5 O" N% g- _: C7 N
char id;
- n) Z7 a- |! C! |5 r
8 X6 ?1 r' A0 y! `5 }4 x Agent(char id) {& ~0 a' ~+ w7 |# {+ O) }
this.id = id;, p6 D# i3 V% x2 D5 f5 [0 l
}
, ?( ~7 h% S5 z+ i( x: ^
6 J8 _3 H- Z5 m public void agentStep() {
( o _. y2 [4 P System.out.println(id + ":" + Globals.env.getCurrentTime());
3 Y& A# { @3 \7 \ }! ]3 v" q+ }8 A* H" a: r) g( [* c
}
8 f$ S* y% l3 V5 T! A3 g$ `0 j
public class ActionGroupDemo extends SwarmImpl {: d9 b+ f- q( I+ T% m$ w$ C0 x$ f
ScheduleImpl schedule;
5 J0 A9 v7 z0 \4 [" G ActionGroupImpl actionGroup;6 ?! X4 q# L: n
ListImpl list;
1 T9 B" }; {* F! K1 a char Id = 'a';' K ?, T" t* r0 M( V
- ~) n, x; {* C6 e9 a
ActionGroupDemo(Zone aZone) {
& K) r1 [/ Q5 `; h' L u super(aZone);
9 F Y! [0 ^7 y0 d" G5 H list = new ListImpl(aZone);
9 Z+ ?! `" S: [; e swarmSetp();
% G8 K7 ]* b- U) s( W2 O2 G0 ^ actionGroup = new ActionGroupImpl(aZone);
0 x$ p8 s: b' H0 o4 q! J/ a0 V schedule = new ScheduleImpl(aZone);
4 [ e5 x# I* s2 B! d try {. P1 h2 b/ [% o- U
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 J9 O, J+ B% i( j' ?6 @# a Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 I# {$ I! t' m
! a! v( ?; i* ?
actionGroup.createActionForEach$message(list, agentSel);
" _0 W. x# o1 f% R: b, x3 d% ] actionGroup.createActionTo$message(this, swarmSel);
; z$ C$ H% D0 z% x% A7 x9 g schedule.at$createAction(0, actionGroup);2 B \- V' H/ _( W# N5 W T
schedule.at$createAction(1, actionGroup);4 ~, u' l) c% }1 e0 V
schedule.at$createAction(2, actionGroup);
" U" Q% M' t8 i
" J1 O$ M* H: @$ _$ c1 _; U } catch (Exception e) {6 G T5 k q0 C L
e.printStackTrace(System.err);( M9 W4 e# d# U! a
//System.out.println(e);$ O" V- ^( e+ Z8 a
System.exit(1);
; W; z. b: |2 R. j0 w5 h }4 E: H9 D; [2 U# z
( R, d8 q8 F/ T9 t `* Z Z
F. z( x' i2 x- R
}
# X" {7 y& ^7 G Y" o8 \" O8 U
3 g+ J0 u" U# R# c1 N) s( i2 E1 }' q private void swarmSetp() {
7 G$ f) @" x) Q" |+ o8 Y# D list.addLast(new Agent(Id));, j$ O0 q* K- B0 p
Id++;
0 `8 |' w. C( O }
' N( C# w: Q' r! {3 X' |# e
. Z q% I4 X& E2 m6 T public Activity activateIn(Swarm context) {
6 W1 Y) K! H4 O! a) G super.activateIn(context);
: v: y# e* {4 M5 { schedule.activateIn(this);+ K5 v( b \+ p, o3 d
return getActivity();
0 l* Y! p1 i" Z, X$ B }* l% e5 y. n5 m H0 R/ p3 w" N
' i0 }* S1 m. t
public static void main(String[] args) {2 U, l3 [" L! J6 X8 T! i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' ~! Q+ N, C4 X# W5 ]) f Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 f J g. k0 H swarms.buildObjects();; Y- ^* a3 D& b" ^: @
swarms.buildActions();7 G: U$ D9 @* J0 S' X
swarms.activateIn(null).run();0 e q" _; R1 d
}# p+ l5 R. c* ?9 p( S, s
% t1 `& L! B- N. ^1 j B+ f} |
|