|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " s. }0 c% ~1 E& q
7 i" @4 {0 s7 O- p( ^8 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ f9 o9 l7 d) U6 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 I; k# W: G% C" [6 j8 L/ Bswarm.SignatureNotFoundException
$ B8 b$ r. O0 f" m! i1 V at swarm.Selector.<init>(Selector.java:76)$ W T! v! A& @$ |
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, T+ X( \2 a) R7 T+ y$ f5 Z! x at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 Y+ N+ T: o, n/ d f" J0 N! n! `. L
9 l+ r' {; [/ w. _* x. t
import swarm.objectbase.SwarmImpl;5 l0 o4 w- H0 }9 z- A7 Q: n
import swarm.objectbase.Swarm;! l. J1 ? t* C3 Y& ~
import swarm.activity.ScheduleImpl;
7 \+ G5 t5 P- \/ fimport swarm.activity.Activity;: Q* F7 @, S# [/ W5 R( ]; l; h
import swarm.activity.ActionGroupImpl;
2 h5 y, |4 w2 E/ G/ |import swarm.collections.ListImpl;) w% d. H7 {0 Z) A" I0 [
import swarm.defobj.Zone; ) w/ U, i Z" J% G4 j$ c) Q0 ]9 u
import swarm.Globals;
( i5 e% ]- ~# W) B! _' j ^7 {import swarm.Selector;
( P- g, }( p% R/ _+ |1 c6 r9 timport swarm.activity.ActionGroup; * w2 o: o- i" U5 t6 x+ R9 e! ^
class Agent {; w5 {( z% L0 u. w
char id;
* T' x0 A `/ |' V8 G0 Y8 r$ @) h6 T; t9 Q
Agent(char id) {
! ]# C5 c; y) l3 a( c this.id = id;
# P/ r* T( M& G& c" l0 E2 l }- s4 A8 R" u, {$ y( h* k2 L4 Z3 B
- `: I& j0 K3 n! X. ~( {1 @2 y C
public void agentStep() {6 E/ I, E* [" g ]) j( U: i
System.out.println(id + ":" + Globals.env.getCurrentTime());
- C: T$ {$ X. a% O6 d1 m5 `& u1 h7 {. B }$ k- M5 A7 E2 \8 O& b$ g3 y
}
% r9 l1 ~, N2 ?( e2 K. ]0 _+ I2 ~$ v
public class ActionGroupDemo extends SwarmImpl {
5 p2 y L- ~) C8 Y2 i, n ScheduleImpl schedule;
# x( b9 n; X7 \7 |) o ActionGroupImpl actionGroup;
0 R) A; Q, Z# z* v d ListImpl list;
- \# V# d: ]0 z" @0 ~( E( n; j+ x char Id = 'a';
# G5 L' F5 _7 Z7 n; a4 R" Z7 U
; ~# _9 D* x! A4 J2 W$ E ActionGroupDemo(Zone aZone) {
. V9 S, |1 |7 A6 G! i0 y super(aZone);* G2 |. O7 f6 b
list = new ListImpl(aZone);% B* Y2 w2 f; z7 P- O
swarmSetp();
8 r# ^; ^7 {4 q" G8 b0 F actionGroup = new ActionGroupImpl(aZone);5 ~1 Q0 e" {. `* e: a! O" i
schedule = new ScheduleImpl(aZone);
3 j. ?* @4 [+ o6 @- C& d' w3 n try {
8 w; F8 o6 r, g7 G Selector agentSel = new Selector(Agent.class, "agentStep", false);
( C5 x6 m+ a+ M. e! H9 \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* t& p1 V1 t! E: U
7 N p) Z7 a: \0 f6 C actionGroup.createActionForEach$message(list, agentSel);
& |6 T& @% f7 E, \+ u# t actionGroup.createActionTo$message(this, swarmSel);
* x% }9 \8 j) \- J; b _+ z2 r P schedule.at$createAction(0, actionGroup);
" x) n% ]7 a1 |9 M: O schedule.at$createAction(1, actionGroup);7 U2 [& S4 B @$ D# e/ M) {
schedule.at$createAction(2, actionGroup);
- I' P$ ~4 p3 y+ V- s: ?. S' B
4 W% ^3 o9 }0 j7 ~ } catch (Exception e) {
1 d; v& _& _8 o" a9 ^5 A) w" V e.printStackTrace(System.err);
, t7 N! ^- S( H, X# C //System.out.println(e);
0 R; u1 Y% N7 Z7 W9 @' u System.exit(1);
2 K0 ^& M, V2 {3 R6 ~ }
# A7 F- v- \" {& R4 F& j# G' R: f, m- K; V f" [
- q, |' i1 Z2 }) J3 v' W( F9 H }) f7 {1 b) j! ?9 W
* _. G8 U( e' K; i# f private void swarmSetp() {
`9 |% o9 K& o' C" U4 B. U list.addLast(new Agent(Id));1 o8 k3 b) c9 e* F# g
Id++;2 B0 O+ d r9 ?; l0 L
}$ X( B1 w$ u( A8 l( i8 k
5 r8 @' D/ V- Q' S
public Activity activateIn(Swarm context) {
9 H- b0 N6 v! M! N super.activateIn(context);5 P/ C U8 i! [$ D, M( o5 x2 p
schedule.activateIn(this);
+ i) N: Z6 ?9 q2 F7 h" u% m return getActivity();% q" L4 ^+ B) f0 J' `0 ?
}9 }; n5 i% X- }9 H* p4 [! _; O; v# U
3 J& g* U( M1 V7 r6 o4 F, a7 w public static void main(String[] args) {
3 ^6 d7 d8 L$ l; Q o3 g5 [* F Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 s0 k( u9 l) s7 L- y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& W5 q; l! t" ?5 r7 l2 |+ U swarms.buildObjects();2 s: S2 ^* y) e! D
swarms.buildActions();/ ?& q- s/ [! @5 J! r" |- r
swarms.activateIn(null).run();5 X# c; F0 A& U* q
}
1 n y" f* K5 }
3 V+ e9 u! a* G8 F" x$ G} |
|