|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, N/ o8 K8 X6 d2 M# v# {, w) ^* C
- h* V* W1 |* G1 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: Z. L! p: |7 ^5 d2 T0 s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' G/ m+ }' q6 S8 {6 z0 T
swarm.SignatureNotFoundException
' |: k5 B) C6 S- X" p0 c! Z at swarm.Selector.<init>(Selector.java:76)6 D6 m* S: X) J" ^$ }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) X+ h7 ?- r- |1 ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! d% A" _7 D& A6 Z8 C) Y d/ l& }& W4 U5 ~1 g: s8 [6 i
% h# f4 t2 v3 A) ^2 J9 j: Dimport swarm.objectbase.SwarmImpl;
0 v) D# _* N6 N' limport swarm.objectbase.Swarm;
5 k- T9 L4 Q! B. O3 s& @' fimport swarm.activity.ScheduleImpl;
" g) |: ~* c2 B" pimport swarm.activity.Activity;! y1 _4 v7 i) i& o6 ^
import swarm.activity.ActionGroupImpl;
2 Z2 ?4 o7 ]5 P$ f1 ~import swarm.collections.ListImpl;
0 |/ l2 O9 n8 Z' \, O; Gimport swarm.defobj.Zone;
) I- S, m, ?6 Simport swarm.Globals;
1 h% u$ m" `; m- L9 B8 _import swarm.Selector;/ u$ {- p9 Q# I# `
import swarm.activity.ActionGroup; % T+ e- p2 h5 M, b
class Agent {
/ F0 D7 q9 M9 `- i char id;
: T0 ^: i! i6 a1 C, |, G: z1 e j
Agent(char id) {
" G) t3 u$ z# b4 S) b; ~+ { this.id = id;- m1 S# N2 T8 Z" Q
}
' R% }& D, c6 N/ _) O* e
7 `# U( U5 [6 t @. a public void agentStep() {0 Q: o1 q' r/ N# L, K6 J
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 T$ O% n s* ]. m7 O4 T% k- O- N1 v }
/ w; i6 r# R9 {+ A+ I/ c. V+ Y}. H) g1 [3 U8 n2 T/ H
4 x4 D! {& M! M4 O1 k0 `& W: |: g% y
public class ActionGroupDemo extends SwarmImpl {
! Q# B' r# z& |# m& H" t ScheduleImpl schedule;9 H3 q7 h2 [" }2 Z l/ @' X4 e; H
ActionGroupImpl actionGroup;5 \# W" I) A/ S r/ q) U# q
ListImpl list;* h5 |$ P0 @% l6 v+ o& V
char Id = 'a';7 b/ K+ ^, Z, ~3 \! U& v
7 j; X6 m, I7 t( {5 F5 c) x ActionGroupDemo(Zone aZone) {
' Q8 \- x6 b6 O; S) q8 I3 S super(aZone); l. p/ w: u6 S
list = new ListImpl(aZone);& x1 C9 J7 V- p% p; y8 Q' f Y2 Y
swarmSetp();/ n0 m( h J/ r3 [* u; b
actionGroup = new ActionGroupImpl(aZone);2 g) G. A+ Q" [
schedule = new ScheduleImpl(aZone);2 ?9 u* e& e0 u$ [& M
try {4 Y0 D. P6 I" y+ B, G* |" [( Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);
% Y/ d" u8 u+ z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ x' E8 S$ R S# g" H* Q9 M ! @# P: I8 N. l, w/ T% e7 s
actionGroup.createActionForEach$message(list, agentSel);
5 M5 A9 g6 {1 v# A$ z- p7 G actionGroup.createActionTo$message(this, swarmSel);/ |5 D" g) L# g$ }8 n, U9 g
schedule.at$createAction(0, actionGroup);4 T- N0 q+ N, c
schedule.at$createAction(1, actionGroup);% ~" P3 y8 z+ w! x' o E; c
schedule.at$createAction(2, actionGroup);
6 L, }+ E( X [; b- m2 U% R% H @0 T2 i# P: g: q) L
} catch (Exception e) {
P& n% @% g8 P e.printStackTrace(System.err);$ k: {3 ]. l7 ^
//System.out.println(e);! P, W3 o' _; R& S* `0 \* |
System.exit(1);
( [! H: F/ ^/ `& H, [ }
6 B* @! |1 K% X
+ ~) h& l( x7 d
7 ~8 |/ u# X. |& r5 `# x Q }( ~) T. y5 c& V9 i- M8 S
+ s; C8 `2 O* y private void swarmSetp() {. w" s7 i( D [! y( c% Y3 G
list.addLast(new Agent(Id));- F" ?" ^) s9 S
Id++;7 A8 g9 ~9 v. Z* P& o
}
% D. d7 z4 y5 Q0 I% M* I& b9 z, ]7 F7 n& ]0 |3 ~
public Activity activateIn(Swarm context) {
: E A0 R3 R& r; Z; n: l6 g super.activateIn(context);
6 Q9 I9 H" R0 A! g! ^ schedule.activateIn(this);
! b1 T2 W% l- z0 r/ X return getActivity();0 V% b- i* [8 M' d3 V8 K6 t9 B
}
v4 P3 i8 q9 @2 {7 `. T* f- _9 _# f/ _3 c0 Y& h/ I8 r3 Q1 u
public static void main(String[] args) {
! `/ K' c! }& P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 J* @0 E+ \$ F9 f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! v7 n1 s- s2 e) c7 Z swarms.buildObjects();
, f' z5 k2 u1 }, [ swarms.buildActions();4 Z! J: t* b8 v2 k, o6 J
swarms.activateIn(null).run();
% Y8 d2 Q; w- p0 z( H8 e }/ D( c% q3 ?0 b% M; ?
" V$ [- [+ D2 ^) i/ V
} |
|