|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. J3 @8 T- O0 I. n
& @- V. |2 \1 x3 \, ]. ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! S" A' q4 d5 ^: | t; T& z5 M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 ^7 E- p8 e1 i: w
swarm.SignatureNotFoundException. A" V/ V/ o/ z: ?* c
at swarm.Selector.<init>(Selector.java:76)
5 K; ~( c, @5 S$ L at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 z7 Q7 H0 k5 Y }: r at ActionGroupDemo.main(ActionGroupDemo.java:67)
( x7 L& Y9 G; T! a! o! H1 W; A0 K$ J
5 ]4 n/ [* k( b4 }; X. [+ Aimport swarm.objectbase.SwarmImpl;
& d6 f- u) }8 g( |import swarm.objectbase.Swarm;
3 c: e: j7 K! o; [/ S$ u+ C( Uimport swarm.activity.ScheduleImpl;1 h! y) ]! A" U9 n2 o* t" E
import swarm.activity.Activity;
# z- {3 L2 I0 W4 I/ Iimport swarm.activity.ActionGroupImpl;+ ~& P) r* s% d! G/ L' }& ^5 A8 N
import swarm.collections.ListImpl;% c( y9 D! a7 b6 D6 q" i$ N" J
import swarm.defobj.Zone; : g$ G2 y8 R. n
import swarm.Globals;! M1 \4 R: Q2 y' F; h4 l
import swarm.Selector;
3 K& e9 w( ^/ y! n9 c, Nimport swarm.activity.ActionGroup;
! s) E; T q$ \8 b/ ?& f5 w1 P ~class Agent {2 o) C2 I9 a; u: m' g: V3 I0 h _
char id;
! e$ y( X5 H$ V; a8 ?, E: o7 ^' ]& V2 Y* T# _8 `1 C" U% a
Agent(char id) {2 L/ L- I, f- X# S! v
this.id = id;
3 F0 V& X8 F- F9 c+ }- |0 D }- j0 R6 D8 E5 J" W
8 e( X x: F$ z; i( U( R3 n( ?
public void agentStep() {8 r% }' \& i3 Z8 p! X
System.out.println(id + ":" + Globals.env.getCurrentTime());
" z$ Z& Y; B# L$ d4 ~1 R( X- a }
4 h, {: c1 l9 L/ n* D% K9 K}
7 v4 m% `: e% a2 u$ w0 a. Y+ u) W& f
public class ActionGroupDemo extends SwarmImpl {- M2 Q1 I" K- P5 C T) I
ScheduleImpl schedule;
4 z* r3 d3 K* q ActionGroupImpl actionGroup;. |* A; w! [% v- r S2 z
ListImpl list;
1 P5 K% Q. c) t* U9 r6 M. V char Id = 'a';! f8 L) f! u5 e: c: g$ T, e
N: y' u/ i6 z8 T! ` ActionGroupDemo(Zone aZone) {
4 H) L# {( j% [1 ~1 n super(aZone);( s+ e+ B. j% U! X, T
list = new ListImpl(aZone);
$ i* [! `/ c: J8 G swarmSetp();5 v) L2 b! |( R0 H
actionGroup = new ActionGroupImpl(aZone);
4 l( `% a- b1 k: U2 f% X, ~4 ?( t schedule = new ScheduleImpl(aZone);: `5 Y7 ]0 k `- `
try {
- ?2 h0 c) E4 U" c+ d Selector agentSel = new Selector(Agent.class, "agentStep", false);
! B; `2 s1 _6 W/ O' P9 O9 J! b( A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' x; ^) u1 @2 `! D6 q: _' E7 \5 B D
$ }! i8 `; R; d8 {7 t8 Q7 z+ Y actionGroup.createActionForEach$message(list, agentSel);
" k! p s: h9 ? actionGroup.createActionTo$message(this, swarmSel);
5 d d& H m% J! r schedule.at$createAction(0, actionGroup);
5 y+ M3 m* F: H. Q schedule.at$createAction(1, actionGroup);
. `. H' ]3 b$ h0 \9 l! e1 j schedule.at$createAction(2, actionGroup);
) `4 B. i& ^: h8 w: w6 [' X
( G6 ?! s, i+ e) ]$ X& E } catch (Exception e) {- f- F7 @# y; d1 }; n9 y8 w$ ~
e.printStackTrace(System.err);# b+ G% ?: w, D0 [1 b
//System.out.println(e);
! l5 C, h: |) |8 h! |; \ System.exit(1);
p, _$ \6 M! X0 d9 P4 Y9 t }; Z7 }& V$ r3 e/ D
; B3 G' d8 M; O) ?5 w3 B7 b: x
' _, Y! h) o2 @2 \' G9 Y% L: }" Z+ Z
}- I7 O% B" m. Y. i
) t, x- d2 O7 X* D, A C1 Z3 e
private void swarmSetp() {0 E% W- r$ L& P1 C# C' I' _
list.addLast(new Agent(Id));
) I2 r# ~3 x% v6 u2 `/ }" F: A7 u Id++;
1 H% o, [0 K3 \( x }$ }* |* }- W) \4 j5 h3 ^6 c
# t5 r/ U! i; {/ k7 X$ ~1 W' l public Activity activateIn(Swarm context) {
Y5 S' h. r" a7 W9 { super.activateIn(context);: Q% g" V8 F. i4 l: o
schedule.activateIn(this);
. o, K% l7 H$ l7 `+ S. [& _2 Z5 a return getActivity();: Q( B- D0 `" w8 | D2 D. [
}
3 T4 X0 w' @. C J. t5 W1 J4 P( q7 s' C: n, g& L: g' ]2 R
public static void main(String[] args) {- J. ]. V+ E5 ]% R6 J8 {- {
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ O; R* `' D& J8 z: V/ Q3 A
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 y5 e9 X8 g& l& f) R( U
swarms.buildObjects();) R! ~, f% g$ W1 t4 W
swarms.buildActions();) ]" V; k# e: V# `
swarms.activateIn(null).run();
( @- K0 P+ ^0 T& R }6 F7 `8 g# t5 g" _( z
6 O* `& e1 a! P+ ^$ i} |
|