|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 G+ N& n9 o8 x4 ?; N0 U! a
8 h2 Q9 n- P7 F; g, V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 w2 W. o" U2 O/ N" E0 L8 o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ~$ o+ ^( j8 J0 o- D
swarm.SignatureNotFoundException9 B9 d0 ~4 X3 K5 Y- G, s
at swarm.Selector.<init>(Selector.java:76)
, V) h7 A) K: p; I/ g# n9 O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ G- b5 g. ]& o at ActionGroupDemo.main(ActionGroupDemo.java:67)
& _$ T! `- t2 V" g& V/ e# I3 i1 {/ J! G* v& y" g! O
2 P' }( H0 l5 F+ M) T% j( mimport swarm.objectbase.SwarmImpl;
7 C8 z- d- s8 a! R) C& S- Q" simport swarm.objectbase.Swarm;
; B4 y8 t8 V+ r, F9 f, X! ]( I5 }import swarm.activity.ScheduleImpl; Z0 X* \/ j# n
import swarm.activity.Activity;
: f2 Z/ N- p Rimport swarm.activity.ActionGroupImpl;+ G( A* r$ P6 ~& D1 t3 r6 o
import swarm.collections.ListImpl;* f. I/ D% W _, t) ?
import swarm.defobj.Zone;
" s, j9 p$ I6 j/ _ O- wimport swarm.Globals;1 o3 F) V6 \8 L+ \8 o+ Z
import swarm.Selector;5 F+ |6 X4 z/ |* O$ y
import swarm.activity.ActionGroup; : H6 T; T- Q- p5 {3 d4 s
class Agent {' r/ d5 q+ p) j6 a5 y
char id;
. ]2 _# t7 x: L8 k, y" `
0 E4 g( @/ C+ C& T' O; d5 ^" @ Agent(char id) {. |0 {, v* L8 m8 i6 h) m
this.id = id;! Q% }- ^7 _3 l& z Q
}" K4 ^& k4 b. o! ^ | V J" a5 P
& v7 J' h$ @9 {8 D, g0 ?
public void agentStep() {6 `/ [3 o) R; y, }
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 t' F3 ^* c5 S3 S Y, l* `5 M }
6 W& }9 C) P0 T5 S}
* }% |. J0 U$ n- Q! I
; M3 K1 |) B1 n6 Spublic class ActionGroupDemo extends SwarmImpl {
3 y- Y+ I+ Z" v( e* u8 K' H ScheduleImpl schedule;% W8 L- @0 f6 [" B# F
ActionGroupImpl actionGroup;
# F, U* g" E+ p" W ListImpl list;# Y: Z( C& b6 K5 r, W6 s
char Id = 'a';
; h0 Q" ^2 `* @- x
- m5 [/ g# V6 a5 Q* f: O- q ActionGroupDemo(Zone aZone) {
8 I+ `' l, ~. a super(aZone);
1 r. o6 U: v. r: X, g% Q list = new ListImpl(aZone);
/ P) Q9 L& B# F$ b2 _ swarmSetp();8 W7 l% L8 S' g8 ]7 s
actionGroup = new ActionGroupImpl(aZone);8 U2 q7 {/ }1 y2 `
schedule = new ScheduleImpl(aZone);
+ [, ~) O4 h s$ i M" @. e! Q+ w' m8 q; ` try {4 X+ Y+ [% h8 M/ u9 ~2 f% {
Selector agentSel = new Selector(Agent.class, "agentStep", false);
; Y9 D8 Q6 u/ Q `6 Y! S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. m7 T' F! k0 l4 G$ f) W
) y1 X9 s& y& `; x
actionGroup.createActionForEach$message(list, agentSel);
# i, O$ o2 C0 s$ g, p5 ?$ {4 ~ actionGroup.createActionTo$message(this, swarmSel);
0 G+ Y, V1 Y% {! H schedule.at$createAction(0, actionGroup);
" w {# Y' t7 i1 T8 W schedule.at$createAction(1, actionGroup);, U1 N5 {2 I9 |. T; {
schedule.at$createAction(2, actionGroup);6 Q+ V( B$ b; {, E3 j
, D' `( e" P) r% k
} catch (Exception e) {
. j0 s- I, [! y e.printStackTrace(System.err);
; {" G1 Z5 Q/ U I0 \# d/ R6 U$ f, E //System.out.println(e);
- O( M) g( T9 M# Q+ r# l System.exit(1);$ y' D. A0 v5 U6 W }$ I
}
& q: J% U3 _ a4 q8 {- s z
; h; w" p+ j' J% C- y G, S% V# H' r
}( }! l9 E* J- l7 l, b! m% v
$ l* V$ U, r ^8 V3 A) Y' A7 v private void swarmSetp() {
( a6 V- p: M; o- K list.addLast(new Agent(Id));" @) d9 n. Z4 X) S( B6 ^
Id++;$ R* Y0 P0 f" K, F' @: d
}
; v1 Q- L/ q' C6 V3 W' [7 o i ?1 _: H& t
public Activity activateIn(Swarm context) {0 Q8 }2 Y/ B- R$ X
super.activateIn(context);) M8 b2 A. q! c/ |9 F X, |
schedule.activateIn(this);
4 @6 u9 V6 a6 X7 _- J# ]* j+ G return getActivity();- \# v/ c# g7 {$ `6 m
}
W. D5 s& J" A) A/ C% q" x7 m3 Y. B3 H4 w7 I
public static void main(String[] args) {% [. t/ ~- l8 k" r% H! V- j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 \: c2 X9 [7 x! h) O9 G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# O: _& N- F. ?& _/ z swarms.buildObjects();
4 s% I1 z! S, e* V swarms.buildActions();0 c4 p; _1 k* H( [
swarms.activateIn(null).run();; z! y" Z! {( h+ X7 O$ X: H
}1 G2 Z7 A& |* `6 t* P3 U' ?
% K1 M6 X* D5 I" O
} |
|