|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 \# k' L- e( X; ]
6 P% g* p( k( z; x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 L) _1 y3 d4 ~; T% u9 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 U+ L& g F1 R W5 O1 V8 P
swarm.SignatureNotFoundException+ Y3 P( R' B2 w
at swarm.Selector.<init>(Selector.java:76)- H$ B) Z3 ]/ _* @2 Y2 v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( W0 U7 h' x( o! ^7 p
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 P4 _2 `, e8 S4 U% S. g
" ]( [5 T8 D, n6 R% k
' B9 C( T8 U' R! f3 A
import swarm.objectbase.SwarmImpl;
! Y5 }1 k0 O: P3 [import swarm.objectbase.Swarm;" c" B! o5 t8 B1 f1 Z
import swarm.activity.ScheduleImpl;- o" O |8 P* ` \$ n
import swarm.activity.Activity;
. n+ V9 v8 N9 p5 U' ], uimport swarm.activity.ActionGroupImpl;5 O3 k% Y: l: G" x: c+ k) ?, X
import swarm.collections.ListImpl;1 x( |9 ~2 t6 @4 |; m" }# ]9 F
import swarm.defobj.Zone;
: l) T9 ?; J' B9 K5 V; p8 eimport swarm.Globals;
( S: r2 ^) S! T2 C( s! rimport swarm.Selector;
- I* w5 ^$ e) g, r3 ximport swarm.activity.ActionGroup; 1 W; S. ~9 B3 M/ M7 n( I2 [) |
class Agent {
9 E/ M9 P' |5 ]& F: F+ B! I0 _ char id;1 A3 m; `' R3 F+ c4 ~
5 D3 t+ s/ m+ P7 x) ~ Agent(char id) {
" d: R+ \/ [4 @, N- S5 F; d this.id = id;
; g1 a3 n/ y4 M8 c6 n }
5 l- h* i. y; J0 W# p: z3 p; i |% ` A! G& A) Z
public void agentStep() {
+ j/ B* ~: }7 K; _+ B1 r System.out.println(id + ":" + Globals.env.getCurrentTime());
) Y, ~) I5 |# A }3 y) t5 R# ?& O
}5 r. Z$ X% g9 l) `
- D9 W3 {+ K) T$ O' [! Q+ lpublic class ActionGroupDemo extends SwarmImpl {
; e6 T3 {! y: ^0 e' A/ o5 _$ g ScheduleImpl schedule;
/ j v/ {( y- A+ b' V8 E4 s; ~ ActionGroupImpl actionGroup;3 J/ [: C, \6 K; n7 l
ListImpl list;
* D. v% K7 P: S8 P& @ char Id = 'a';" M5 M6 Z- i6 t7 J8 O: |2 S
6 M! B; o9 {0 f' { ActionGroupDemo(Zone aZone) {& w3 p* \" i; E# k% x( q
super(aZone);
, c) |5 E& G0 T* j7 @+ S1 m# ^ Y list = new ListImpl(aZone);% U& o3 A; a7 b5 h9 R& }+ g
swarmSetp();
6 ?7 r/ p8 n& x actionGroup = new ActionGroupImpl(aZone);* h7 n$ G. Q- V
schedule = new ScheduleImpl(aZone);/ n3 y. ]0 p1 t9 C( M) I8 F
try {4 a$ K$ ~# K1 J. F" M
Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 S/ ?7 e+ {/ f& e& {; T& Y5 w Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) U! X0 H. s3 u% O2 Y
E1 Z8 A$ i" [& l( y" e; f7 t7 ` actionGroup.createActionForEach$message(list, agentSel);
8 h2 J1 T, z) D$ `: R( }: g" Z actionGroup.createActionTo$message(this, swarmSel);
" B. P8 I$ a/ b( T1 E8 L schedule.at$createAction(0, actionGroup);
, m/ k" t$ F; G J5 G# M% e/ ` schedule.at$createAction(1, actionGroup);/ m# L1 L2 Q6 z
schedule.at$createAction(2, actionGroup);: o3 f5 Y* r8 K* {, [2 Q- Z
4 u# ] ?( J3 Y& o
} catch (Exception e) {2 o. p- z4 `2 V- d4 k1 c2 _0 F
e.printStackTrace(System.err);
: u& d$ v3 j! l //System.out.println(e);
% R7 L7 t( {% ~ System.exit(1);
% a* Z1 x- Z: i$ m }
( ?3 H7 b2 m# r4 P y
/ R- s8 G! Y3 t0 R% H
& T. f: B: v6 N5 h9 I }
+ c8 x* K) ~- Y, l% b8 z# q/ H+ o, m/ n( p, M
private void swarmSetp() {
& g6 F" ? u2 Y: k6 }2 k list.addLast(new Agent(Id));# I3 k* g0 d7 r
Id++;2 R; Q: Y) l; w
}
' l. w; U( O: Z! v3 ]& f. u
3 Q8 H- X8 w0 T+ U; H public Activity activateIn(Swarm context) {! A% C& n7 }$ b
super.activateIn(context);
9 o- N% `% ^; ^0 R schedule.activateIn(this);
/ ~% S6 N, f: B; k return getActivity();: @& \9 W( d% R8 v& w$ |) E# w: c
}
0 c2 l( N6 f @0 H. J! K
2 s1 \0 w: j! l T, T public static void main(String[] args) {
" ]( O0 q/ e" J) w2 z; Y. _9 b6 E9 S* U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* x+ \* ], u2 {9 x" ?6 }1 N2 b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 L( W; _* }$ u
swarms.buildObjects();
. J( E; T i Q5 O Y8 n6 t/ s swarms.buildActions();+ C( r, n$ { u$ C% E8 n
swarms.activateIn(null).run();8 I& f' M! f/ m9 l: d: K$ U) ^
}; C/ e U, \3 {3 h
4 ?, L1 O$ I9 a1 {* G- ]5 m} |
|