|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J k/ m) K8 Y$ ? q
. ^* `9 x2 k2 L3 J7 E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 X6 S5 X2 d$ }6 R: S$ N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 f, f6 u/ C! s7 e; X" Q
swarm.SignatureNotFoundException# X5 R5 A; E6 ^6 h, F
at swarm.Selector.<init>(Selector.java:76). Q% Y% q, W+ d$ T* G9 b0 Z* r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# [# J' f2 S2 l# E4 Y# I ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* {' N9 n# i2 ?1 r% I s/ @
( Q- U2 l1 Z" B1 R+ b% k. {2 X5 V Y% m8 K
import swarm.objectbase.SwarmImpl;6 H9 L9 i! r+ ^9 A" f; A
import swarm.objectbase.Swarm;
, W% e" L6 G+ f% Timport swarm.activity.ScheduleImpl;
/ _2 j: W5 G& @1 J# Pimport swarm.activity.Activity;" ?; f9 Z: t/ f, M- A, p1 C
import swarm.activity.ActionGroupImpl;
6 o( ]9 W- L. w x5 l+ `- Zimport swarm.collections.ListImpl;% `* c4 U/ O. d7 @" r, W
import swarm.defobj.Zone;
/ } }( A, O% [% A5 limport swarm.Globals;
+ p! t8 }9 L* Z6 M( E( zimport swarm.Selector;
8 X; q* j- V7 T. t3 z0 G* W6 B& `import swarm.activity.ActionGroup; . G$ x- ~8 H. u
class Agent {- H3 K% X1 e/ O/ O. J V( w. X
char id;. {; P/ x! ~& y9 d2 i1 Q+ C& X! t
" [, O; O1 t9 v9 T+ e
Agent(char id) {
3 P; o1 I( v9 K( K this.id = id; v) ?# p; ]7 A
}
6 s- L g" f \- m7 o9 d& ]" j n; v
public void agentStep() {
+ C8 P8 v( v% i6 e System.out.println(id + ":" + Globals.env.getCurrentTime());
$ L7 m" ~! u2 F/ K9 m }
% c$ n# ~( x; B9 t' i4 r; B}
7 F% G, Z& S: p& Z) h- G: s) C% W( h3 O4 M) A
public class ActionGroupDemo extends SwarmImpl {
4 x4 z m# H. s) Z5 q8 Z ScheduleImpl schedule;& ^5 ?+ h, ~ X1 B1 R% ` P/ A! f
ActionGroupImpl actionGroup;
+ e4 j& g3 q/ V9 M ListImpl list;
( Y: r1 |% [! I) ^6 O, C, |# m& K char Id = 'a';: x0 a8 F2 Q( ?: x' G. P
0 u' y! h8 I; b5 @% e ActionGroupDemo(Zone aZone) {
0 u! ^! B: Z: e. u1 g4 K! S1 o super(aZone);3 L1 {. g1 F, t* V
list = new ListImpl(aZone);
8 e( P& E5 P* ]0 r" ^ swarmSetp();
( d1 I$ V# `# W2 x actionGroup = new ActionGroupImpl(aZone);6 @4 T2 @% ~7 u' q
schedule = new ScheduleImpl(aZone);# R1 @* v8 B1 _9 ^" V
try {
! ^- |* L) e- _8 n Selector agentSel = new Selector(Agent.class, "agentStep", false);
F/ j) J5 ^, x/ y, Z! S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: [. h' \7 o5 T% w 6 P" Z2 m+ ]4 H9 F* k$ F
actionGroup.createActionForEach$message(list, agentSel);
, J" F2 E8 o4 Z6 _ actionGroup.createActionTo$message(this, swarmSel);! B! X5 A3 W2 H v" b
schedule.at$createAction(0, actionGroup);
7 {1 u7 m8 P" m9 ~ }1 N+ R schedule.at$createAction(1, actionGroup);
( h1 i6 I! y" k6 \7 Y schedule.at$createAction(2, actionGroup);
' [. C4 A' H$ D/ n6 d- a- p5 u# u) H. u+ F0 ^ A/ C: ]
} catch (Exception e) {
2 L0 c' M) W) B% P8 h e.printStackTrace(System.err);# w9 ~) F5 {2 F& }5 J! }, K/ N
//System.out.println(e);8 t+ u {# O# x8 J- Y9 \+ q
System.exit(1);
- G: u* a. }. r5 X }
' s4 x: x! r* Y( l+ e: q7 w1 |, H
" x; a$ t2 x6 D- d
3 |8 U9 @0 g. Q {. e ]1 s5 ] }. H# C N' l6 P% Y; x
; a& S+ T9 e# t) t private void swarmSetp() {
$ A- q' T0 Q; h8 |; W; b0 E list.addLast(new Agent(Id));
: I) m) I, w9 @9 G2 A9 s$ \ Id++;
$ y, c: R8 n0 x1 M. o; c* J! ?. e }. S, j9 C3 l. p ?8 \$ {
$ o b" r! R% N3 v+ m: `
public Activity activateIn(Swarm context) {3 a( O( w+ p0 J: }# Y2 B
super.activateIn(context);
4 r- j# z4 A/ h0 ?0 S7 } schedule.activateIn(this);
" c" R. K( c9 E. Y' [: J) z return getActivity();
. q9 J) s% t; q" F4 A% y! ] }+ x7 C6 S* c8 x- [; L% }( U
3 g6 E5 ~2 S4 @8 g+ | y; ? public static void main(String[] args) {
! h" U C7 H* f X+ } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 Z5 ]7 g( U( N" j: Y1 } R) l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# V5 S4 d5 Q0 F0 D: h& f n2 G swarms.buildObjects();0 c1 T: R4 k" w) q, I5 m
swarms.buildActions();( `4 V7 ]$ T1 ?& k: X
swarms.activateIn(null).run();
: ]9 [, ~' i) h2 v; a* i# x; y }; J: k( L" O4 G; n4 f9 q
! d, v7 G. z# K9 v! U: j1 |5 t4 Y
} |
|