|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . ?' m# x z* a7 F8 c6 W, q# {$ D8 i
+ D, N' U+ i, E# ?1 ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 {" L" A7 J) K: d7 O0 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 O: C. p0 H- L% s
swarm.SignatureNotFoundException
4 j8 U3 [! w& X% [! d H at swarm.Selector.<init>(Selector.java:76)$ g2 R0 g1 Q+ ~ d( d, d' @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); E2 S+ l7 i: o3 P2 o; o
at ActionGroupDemo.main(ActionGroupDemo.java:67): V+ v' p# W H( e
5 D9 u9 P6 ?: e5 H( v+ e
" M `2 N$ G, w& S$ t' fimport swarm.objectbase.SwarmImpl;1 y% h) Q; d& O9 J8 U0 H y
import swarm.objectbase.Swarm;7 _6 v3 I% @- w0 M, V# s, \
import swarm.activity.ScheduleImpl;1 F! Z, ?% h5 ^) P
import swarm.activity.Activity;; v8 l- X3 R) v& T
import swarm.activity.ActionGroupImpl;
& L4 m2 Y; s t0 g# e# e2 Iimport swarm.collections.ListImpl;/ p6 ^( X9 ^0 x! a5 U
import swarm.defobj.Zone;
$ \; w/ w$ o. Eimport swarm.Globals;8 Z6 I7 r c+ F E( h
import swarm.Selector;
" S' i( H% [5 g0 K1 n5 w* Y, i1 ?import swarm.activity.ActionGroup;
( ]$ A$ i3 L" t$ } Iclass Agent {
( f% `/ N6 S7 C) s1 J2 U8 b, D- g y1 G char id;
7 s7 l" T/ D8 T- }$ c4 I6 @ |9 X+ d1 I- o+ ]
Agent(char id) {. K3 W, Z5 |& [; E' m/ l
this.id = id;
# V4 ~" q; v/ s4 c% C& N" ? }
$ ~5 B& \ V% O. I
0 m& o: h& \, B/ B5 _ public void agentStep() {
: l6 F3 |: L; B I) ~/ O System.out.println(id + ":" + Globals.env.getCurrentTime());# E3 {$ L3 i6 W- |' r( p
}0 b( C2 Q# U* X+ o
}& C- X+ t9 x/ b8 [& i6 a5 u
3 T6 m' j3 W4 `7 g- i4 i
public class ActionGroupDemo extends SwarmImpl {
- d7 V, n- ^6 R8 J8 N ScheduleImpl schedule;
4 x! E7 ^% P# d! V( ] ActionGroupImpl actionGroup;
( k6 G5 q9 O, z) U ListImpl list;5 q" P2 l4 b0 B9 C4 y1 T
char Id = 'a'; N, _/ O3 M# r7 f. ]' D \1 t, z
* j" x8 U9 y% t& P ActionGroupDemo(Zone aZone) {
2 A, Z8 j( X0 H/ b2 I. u7 @5 ?- a! ^ super(aZone);
6 f; T, S# x7 d2 _ list = new ListImpl(aZone);
, k- N4 x" U/ F3 K0 M! p* g6 ~( p swarmSetp();2 V {: [+ J( i
actionGroup = new ActionGroupImpl(aZone);4 X# j: r" E! `% \
schedule = new ScheduleImpl(aZone);
1 F- g3 N" m' {2 k9 `3 o$ ] try {+ y J. e4 O* M; j: `
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 [8 o* b1 X! I% F6 V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 a X" c' l- l" X% }$ I* Z
9 _5 q; ]" C0 \! m# u+ H3 H7 S
actionGroup.createActionForEach$message(list, agentSel);
- W6 g2 h. M, i$ ] c' O actionGroup.createActionTo$message(this, swarmSel);
! u2 {5 M) q. K' r, E schedule.at$createAction(0, actionGroup);
$ D3 T& C! x" c& R/ Z schedule.at$createAction(1, actionGroup);) f& c$ H4 j% S9 g9 o, L
schedule.at$createAction(2, actionGroup);' G! \- n9 x/ N7 a. E
: w+ s3 e# t/ N& ~7 l
} catch (Exception e) {# H7 \" C! c+ n2 H
e.printStackTrace(System.err);6 k1 b q- r' ^
//System.out.println(e);: Y. b$ |; Z: m8 h2 q
System.exit(1);
' I' W& Q1 B3 l4 Y! \& J* d }6 d' L# p5 }2 Y* q, Y& K! m8 t
% }) o; R: l' N) x- \( w5 c4 P
; Q% O- [7 p( Q3 {+ F0 E }& D9 t" F; ~( {. x6 b. N$ W# k# D
8 v" z" v! o- v2 Y9 B private void swarmSetp() {
0 U7 x4 v# O- w6 L/ E list.addLast(new Agent(Id));0 `% v: [& e# I$ q! j$ p1 l' @: X6 v
Id++;
) i; G% f3 c$ g% h }
! C/ A; B2 C) @1 h; {+ s# e! T, K5 {- Z/ S9 i
public Activity activateIn(Swarm context) {) j, ]& V- v* V/ t/ c, o5 E' e A$ `4 Q
super.activateIn(context);; c$ D' ^" T1 a+ D$ r' v
schedule.activateIn(this); S' b8 a8 G* h0 L+ A4 F
return getActivity();+ c, F0 |# k; E X& Y! s
}0 H' K5 k/ J+ G8 a/ |' h0 w
$ ^9 d: ~2 w4 Y' O/ ~ public static void main(String[] args) {" Z+ e2 r0 G5 [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; j& M6 d* i! K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 a% o6 a- Y. a
swarms.buildObjects();7 z" v6 P# I' r0 w( A
swarms.buildActions();" ^: Z4 z- R+ M; i3 `
swarms.activateIn(null).run();( f- k( l1 C5 i; c! [$ u
}; [# M) M5 o# s( f# q
) c K4 v3 e' ^4 v} |
|