|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 K2 ?6 o4 f/ p
7 Q1 h. P/ q) W8 C- H- r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 T; z3 C! t X5 j$ P/ f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 l# ~' X& z9 \
swarm.SignatureNotFoundException
; a0 v! o. Z! R0 L: m* J D: v at swarm.Selector.<init>(Selector.java:76)
4 g+ C* J) |$ O" ?/ ]) z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 e& W, b0 A6 i9 a U. f7 h at ActionGroupDemo.main(ActionGroupDemo.java:67). c, y1 ]7 _4 f
9 `( i' F7 u8 Q8 t7 t5 @, e) L$ v
/ B: T; m" p; K0 e2 @
import swarm.objectbase.SwarmImpl;
+ K3 i2 j8 A7 ~7 M: Iimport swarm.objectbase.Swarm;
) k9 f. b! S( |0 B# V# Gimport swarm.activity.ScheduleImpl;" d1 I7 B# @& M! t8 ^3 \
import swarm.activity.Activity;3 k# M! B) b6 K/ C( w2 X- j
import swarm.activity.ActionGroupImpl;. I. G8 v9 \) a) M( ?+ l2 \
import swarm.collections.ListImpl;
: H( s* t2 m: mimport swarm.defobj.Zone;
) m$ |9 ~2 g0 L4 Yimport swarm.Globals;
% c J0 U4 v- d4 c7 B0 I: a: simport swarm.Selector;
3 \8 d, X Z) H3 G% v4 [/ Aimport swarm.activity.ActionGroup;
& l9 P+ A$ j# t( Bclass Agent {
- f; x, E8 u" |3 i* C0 o" s char id;4 J- L- a1 N5 L/ S3 k
4 y) Q4 S) b8 U$ o! m. K
Agent(char id) {! N J* @( d5 i0 W0 t
this.id = id;3 \& F" i7 O+ B2 h; o
}
2 a) w9 H! m7 g3 G. i S% ^* X
# y5 U u4 [+ q0 m7 u+ M0 Q! p public void agentStep() {* G5 q5 I7 V2 w5 g9 ^: @2 c
System.out.println(id + ":" + Globals.env.getCurrentTime());
# m8 |2 N6 h4 e/ @' h* h" C }4 Y; U, T. T& V# r. `
}: Q, ]- {/ w# k( A% J& O# D
, q' j: m9 ~$ ? m) y9 w. \( \
public class ActionGroupDemo extends SwarmImpl {0 v$ Z+ H. S; H& w5 ?" S/ \8 p! K4 N
ScheduleImpl schedule;' b8 X2 t2 c* {2 z q' u3 i! w# f
ActionGroupImpl actionGroup;/ h& Z& |4 z) Y- Q, B" r. M
ListImpl list;
& _. \8 n' O7 y$ e- e t char Id = 'a';/ ^/ f/ q* w% D7 {7 v* ]2 i* h& B7 D
# |+ W) P: ]! S, ?1 V x ActionGroupDemo(Zone aZone) {
$ ~0 J3 Y: z4 g% T! r; n5 l super(aZone);
& H/ S$ x0 C* K list = new ListImpl(aZone);
5 I* }( K! }# f) \- i f6 ] swarmSetp();- O" _2 Y& m, V- A! y( {/ S
actionGroup = new ActionGroupImpl(aZone);
& U# {0 _9 `; C9 ~' ]2 |& n: f2 r schedule = new ScheduleImpl(aZone);
3 j4 }1 [5 T- ]/ I$ A, W0 v5 L# m try {
9 ~. r) [# V" H2 J: {1 S0 t Selector agentSel = new Selector(Agent.class, "agentStep", false);; L6 x/ _- H, _2 X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( q7 P" ]- x8 O- T5 _) ~ ' R7 m f0 J* b' v
actionGroup.createActionForEach$message(list, agentSel);
; q" r2 T8 N) j: L+ c actionGroup.createActionTo$message(this, swarmSel);3 h, C$ w$ X: \2 R/ X! m
schedule.at$createAction(0, actionGroup);
! Q" k5 a2 j& X0 d, ?7 J, M schedule.at$createAction(1, actionGroup);
) O; Y4 c0 s" M1 N n/ x S schedule.at$createAction(2, actionGroup);) S. f, _, t( ~
6 L9 y% k$ D b1 t } catch (Exception e) {
h8 V- M4 Z5 Z, }, W4 H e.printStackTrace(System.err);
6 }8 U4 l5 e# n. |0 O* D. ]8 @ //System.out.println(e);% B* w( u, H* j2 s6 o
System.exit(1);3 @ u; t1 T6 W7 f
}
" C2 W/ N9 X$ r. `* ^# g% d: P7 @0 \5 ~# w
' W. x6 \0 R9 {( v8 A }& Y# Y0 Y" V9 Y2 J$ v* {( Q3 U
# ^; K# `) m& @* s8 e; O3 D
private void swarmSetp() {+ P) d5 K" ` ~+ G1 f
list.addLast(new Agent(Id));( _# u- b' o% a4 K/ j6 L
Id++;6 X: A1 j9 ~9 e U7 a
}6 h* e* Q7 I( E! O5 K6 o& O: [
6 f" l5 R7 Y: i7 n# u; w
public Activity activateIn(Swarm context) {/ D9 u$ n# W- Z3 h0 U# e8 _
super.activateIn(context);
) n6 F3 C6 h+ T, ~* x schedule.activateIn(this);
' G ]* r2 V2 C% \5 t! b return getActivity();+ d1 q* r: g2 j. K$ Y. d
}! T* e0 z7 Q7 Z5 t
* e7 n% H8 Z0 A/ f+ h, I; F/ a
public static void main(String[] args) {
+ \' I4 C$ Y" Q2 S( J" k4 Y' N! m Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 a! C1 A% Y2 w& c9 @+ _ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, [+ f2 p" e Y! K# ?+ n( U: ? swarms.buildObjects();% B0 V3 P/ h7 y! M1 o1 {+ l
swarms.buildActions();# P |& F" H$ `: K- v' s
swarms.activateIn(null).run();
9 L' V% L9 O: Z |5 {* @3 J }' E" w) T* o' R. P- z4 O4 h
8 \' V2 ^7 Z( r2 x: O/ P+ X} |
|