|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 l& o+ R! o" U$ g4 Q% I) P
1 r; E" q7 f: c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& T3 a$ `' n* Y; Y: `6 a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# K& R, A8 _- f0 O8 K& ]) ]. @
swarm.SignatureNotFoundException1 v! F5 a( q2 e8 }( C8 @
at swarm.Selector.<init>(Selector.java:76)
# G9 ]% L/ z& J) c: b at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& l, ]. D* O" y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ L" M3 L) s2 N5 q8 p% u; A6 x
4 z1 r1 a1 n | [6 h- n& s2 F& C' i! J' ?. G
import swarm.objectbase.SwarmImpl;
; U, o. f4 Z3 W- S* B& Bimport swarm.objectbase.Swarm;: ^6 Y+ z) {! w, e, N. F* \
import swarm.activity.ScheduleImpl;
2 D3 I0 x. @' L- }. P9 K' b) Ximport swarm.activity.Activity;6 b: e8 B5 V! r9 m+ M ]
import swarm.activity.ActionGroupImpl;
4 ^3 e5 `- ]- W- x Himport swarm.collections.ListImpl;+ O& F3 ?' r) S% {* `9 o
import swarm.defobj.Zone; ( ?5 ^% L8 O& j$ t
import swarm.Globals;
; l- A- U* A' ]9 ^: H# b; E% Dimport swarm.Selector;' U3 d- C8 z J& N/ i2 z# |
import swarm.activity.ActionGroup;
$ J8 Q3 |( u/ r3 L0 nclass Agent {5 g" k$ V( I3 [& \; R& t. b
char id;
+ {6 b5 o9 H2 s$ [; d% Q% {
2 n P& b& t$ M) t2 o: q$ O3 W, v Agent(char id) {
) c: j4 ]6 ]* [$ G( p this.id = id;# L( f' F& ?. ?! L/ S6 J" R4 d3 Y
}
" Z+ |5 |$ E* S! o, ]$ X( A
6 S) W' z9 Y! ^: ^ public void agentStep() {
; H( t* r. Y! {" C' Z System.out.println(id + ":" + Globals.env.getCurrentTime());
9 y ~% q3 B" O2 F* j6 r' i }' Y+ }% j, ]/ r, F+ w
}
! U/ v% S8 k$ [1 b4 y: T% j% L$ t( W- l& @0 [# ?" q6 i
public class ActionGroupDemo extends SwarmImpl {
) @& i0 w; p& Q( B! @, z3 P ScheduleImpl schedule;% p" z& _9 V( K+ C3 r
ActionGroupImpl actionGroup;
G8 f2 {. k! b ListImpl list;
+ S1 H- D) W$ n' t$ W/ k char Id = 'a';, I/ W- w. N- X# _9 U( q
7 h$ p! W9 p# I# j h ActionGroupDemo(Zone aZone) {
0 n2 K5 q7 C2 M2 V2 ] super(aZone);
+ Q9 T5 `+ M/ P list = new ListImpl(aZone);
5 ]7 o0 ^/ q5 s7 Z swarmSetp();3 b4 |4 r! D; p
actionGroup = new ActionGroupImpl(aZone);9 e& j4 ]7 I5 f& ^2 U
schedule = new ScheduleImpl(aZone);
+ x% |' T0 N. u8 q try {4 g' Q& n2 i# ?3 O7 b
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 v$ d7 b) i% Y- K. {0 T$ x: y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, B5 D' i( Z/ U# B! S0 K& T
. s" @, B7 n* z% `0 B- L actionGroup.createActionForEach$message(list, agentSel);& r/ b# N; M+ {, s' m! D
actionGroup.createActionTo$message(this, swarmSel);
' ~$ U, D& p B6 ]( K, o3 M% [ G schedule.at$createAction(0, actionGroup);6 m! T( \2 q" E& W$ x7 |4 T5 a6 T
schedule.at$createAction(1, actionGroup);
& Y _! n: `" V: }4 G3 y6 r+ ]' R schedule.at$createAction(2, actionGroup);, q5 J9 l+ C9 O
! d' a4 M9 f! ]
} catch (Exception e) {) c. {7 h; f) I; {
e.printStackTrace(System.err);8 U" S2 ]9 `! [0 N. i' _
//System.out.println(e);
& {# f8 H% T3 V8 N/ K System.exit(1);
8 e, `% j* S! O& V0 ? }
; {5 P |' u) Y: A2 R" ?1 G
. q5 n& D8 l9 H8 I1 h9 q* E- |
}7 B3 d! w$ }3 X0 X
3 b3 H3 u9 m! b+ o
private void swarmSetp() {( I3 |0 l6 `0 L/ w7 y8 a6 U
list.addLast(new Agent(Id));
0 c; F7 ~8 P. X- Y5 { Id++;
& t: J' r! U3 K+ ~4 z5 u. T/ { }5 j( ^2 W# `- I {6 U, U' [' W
& A! Y% n" ?6 J( G4 P1 ~$ e& o public Activity activateIn(Swarm context) {
& |3 J! O7 \: b6 \ super.activateIn(context);+ \8 n( r. i% Z) z
schedule.activateIn(this);% f' {+ |8 i& R7 j
return getActivity();8 S) U2 j, m. W0 ?6 t& v$ s
}
i! l- c6 s1 h! h7 S4 {# y# }0 {9 y: P& H7 d) T- R2 v6 ]4 b2 W
public static void main(String[] args) {+ ]' R. V3 C5 y. {
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 ~* X7 s; X! ]# L- `7 ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, ^ n9 J/ {3 i
swarms.buildObjects();1 ^% i: i, s/ G# y/ J& m
swarms.buildActions();
8 k1 h0 B- I+ u' r4 R/ U swarms.activateIn(null).run();
, b% u5 c6 q+ \% M# B7 j }
+ w' H& \! r2 D, p- a3 y y e6 t# @9 j; i2 k
} |
|