|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 D% {4 ^1 {: z6 y3 [4 M
4 A9 b, |- }9 L0 c* \9 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, g1 o8 j3 c1 V. C- |: l' C- z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ P0 R2 `% B/ lswarm.SignatureNotFoundException" T0 ^; s7 S7 A
at swarm.Selector.<init>(Selector.java:76)7 ~9 q2 D, e+ `# I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ a" V3 B2 S6 Y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 N" u& m- p$ p: \7 N' Z- y: v, h# e' \( F) p
. U' \* H; ]* |. E
import swarm.objectbase.SwarmImpl;
$ C5 l: ^1 p: b6 F) W) A# ]4 qimport swarm.objectbase.Swarm;
$ Z H3 P' _5 {, t9 Dimport swarm.activity.ScheduleImpl;
/ v: X+ V5 t; `* p+ pimport swarm.activity.Activity;9 F# X1 c. ?5 B3 y, I% l
import swarm.activity.ActionGroupImpl;- A2 j! F) F3 W, W" U8 N
import swarm.collections.ListImpl;+ k$ t; t" f* a# q2 K1 r
import swarm.defobj.Zone;
2 \9 u+ W/ f" Pimport swarm.Globals;
5 d1 z2 ^1 F# @8 W: v( O pimport swarm.Selector;+ e$ I0 y6 R, b+ P$ m* _$ C: m
import swarm.activity.ActionGroup; 2 t- D$ X4 j# t9 ~! h I
class Agent {
8 D: G8 s1 [* f- } char id;9 V" D+ K9 ]" d# M, j6 Z3 c3 l
4 r# ~+ e! ~1 ^2 h- W2 _4 x5 N1 s Agent(char id) {% P# ^( n# ?( t( w8 Q. X `2 H& U
this.id = id;
& p+ ~1 w8 G8 m# S5 w) ` }
' v* d7 P/ a6 E& e% K! }+ r8 {% w: P
# D) {5 B6 H- k V9 d' x public void agentStep() {; y( @6 P/ ?, l d( Q7 Z/ f) p
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 O8 f" T. n, A: q& C4 j7 O$ f }
6 O+ ^8 j7 p# ~# ?5 w}6 Y; w2 K0 }* y
, g I# _5 b0 K, Cpublic class ActionGroupDemo extends SwarmImpl {9 ?; l5 ]. e% ~0 T
ScheduleImpl schedule;
4 D& z% y. P! L+ a, Z% J ActionGroupImpl actionGroup;2 `- \. h7 R2 D2 ~
ListImpl list;! H* {) Q. H5 b
char Id = 'a';3 }9 d0 `3 J$ @
1 @+ o" r/ ~) K
ActionGroupDemo(Zone aZone) {8 D# X0 O1 U( B3 n: I# i
super(aZone);3 u# b. h0 s- U f r1 k1 z
list = new ListImpl(aZone);
" T& ]7 K; Q2 B6 d) l6 H6 G. r8 K& e swarmSetp();
1 Q7 I% a4 H6 w1 y( m3 }$ N- v actionGroup = new ActionGroupImpl(aZone);$ E4 o5 q2 U! H5 W( W6 |
schedule = new ScheduleImpl(aZone);
3 z7 E2 U- X1 g* d3 X/ I try {
: W* i8 h/ @, U& u, l& q4 v3 I Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 z' _2 A* x9 |( [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 q. W" [2 s3 D2 h
9 N* m# A# N7 E2 |. `
actionGroup.createActionForEach$message(list, agentSel);
1 l* X5 q& I9 g V% E actionGroup.createActionTo$message(this, swarmSel);( I Y. K9 m* T! r
schedule.at$createAction(0, actionGroup);
) y- H7 \( O* E8 {+ R0 m6 o! \. H schedule.at$createAction(1, actionGroup);2 B3 D: A* W8 {% w' D
schedule.at$createAction(2, actionGroup);
. m9 Q* t2 p2 i$ n) u
- f9 F4 w; {7 t2 m. \: r7 {7 x/ _ } catch (Exception e) {
6 S5 I: P% w( W, K; C e.printStackTrace(System.err);# w6 g: N j5 \$ [5 H
//System.out.println(e);, n$ @1 g5 F7 H" y& O8 {) Y6 I
System.exit(1);
0 Z' e& _$ ?, k4 ?7 F6 H }
" x$ a, V6 b, s
' L, R( W4 Q0 Z3 A& [
: h8 }9 x0 h1 [. f7 | }
" H7 t2 @0 h8 H, Q8 B) e% f- O% p/ U% C7 g! u
private void swarmSetp() {
( d9 F: p. P: C list.addLast(new Agent(Id));
( o/ F( X, ~. K) j Id++;
; T( i" X* i7 J6 Z. d+ Y3 c }4 v( S) R7 Y" ^7 d a
# A! w: T! O) H3 U1 H
public Activity activateIn(Swarm context) {
$ f2 |! K& m2 ?# }9 c5 T4 b2 D* L/ D super.activateIn(context);
3 ?9 N- l0 G7 s! ~ Q" R) O& K schedule.activateIn(this);7 Q' S( B q6 P2 T& Y8 E
return getActivity();7 D; x( u' s! f: }' n& w% d4 G
}7 q) ]/ [3 S/ n
& o* T5 _- p& M* _2 D
public static void main(String[] args) {, {0 p0 z( m9 L1 [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; {/ E6 A5 F$ f8 |/ V1 R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 Y' L( J% f. d6 Z9 R7 {( _# A swarms.buildObjects();
; i1 B( k4 Z7 u7 w- _1 ` swarms.buildActions();# p" W4 u5 |5 N0 V. @" D
swarms.activateIn(null).run();
3 i$ x6 K N) k* y }
3 p1 `& c* g8 L9 h% t9 G4 M
: X6 v, x& W! w9 m. u} |
|