|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% j( t' T8 `, @. X/ q& ~8 v4 _; n9 b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) G2 a, K/ X/ Z4 e( R4 g% A0 Q/ X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 \6 n; j4 B- {' r
swarm.SignatureNotFoundException
; d$ i1 [5 ^9 f1 _% ?/ v at swarm.Selector.<init>(Selector.java:76)8 r" v$ v; ~) @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) s8 f5 e$ a' ^, d+ t0 T0 m) O at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 b0 k; t+ t( {; m7 ]. Z9 [; i& C- V& m( _: I) P- ]
1 b% h$ V1 F r/ Z$ G0 O& W( _
import swarm.objectbase.SwarmImpl;
) f5 o, L3 q7 W; Z- C8 s! rimport swarm.objectbase.Swarm;
# m0 I" x1 F- c- Aimport swarm.activity.ScheduleImpl;9 N7 t+ `+ }8 h/ |& C; V
import swarm.activity.Activity;
/ f {9 _5 Z8 `( s# Kimport swarm.activity.ActionGroupImpl;( G& k7 S# Y2 n: m
import swarm.collections.ListImpl;
, M9 h7 I4 v$ O5 Wimport swarm.defobj.Zone; ! L% ]# T* u8 P4 K. e5 H" {
import swarm.Globals;
: C7 O3 h& i2 L u- r4 b3 ximport swarm.Selector;
1 Q7 i( t' U6 Iimport swarm.activity.ActionGroup; : D9 f1 [3 g6 M! y* I$ I# S
class Agent {
K, L* L1 ?# \& T7 t char id;
- \* D! h4 c8 B; `7 {) T0 t' ~- v% ^% i7 S! m4 S8 E
Agent(char id) {
7 v" f8 b3 w- s( f this.id = id;" n! }5 r( M; `6 K8 T8 n$ z. V
}# S# C1 X4 k# G$ |2 [# b
/ D- n" Y; V4 O% ^ R" y$ d+ u
public void agentStep() {
) O# F* X! T$ n0 \1 F: E8 P# {2 A System.out.println(id + ":" + Globals.env.getCurrentTime());
: m @: I$ V3 N, L z9 F+ k$ _6 F }! q1 `$ p$ D. S
}
! D2 \ d: p5 }/ D/ A/ j: @- ?* O( L8 r* ?
public class ActionGroupDemo extends SwarmImpl {8 a5 q; W- ] I; h
ScheduleImpl schedule;) ] L8 {; |: \. A8 s
ActionGroupImpl actionGroup;" u i* v) L# T2 O. F
ListImpl list;. X1 L8 @1 c" l" p( w7 q
char Id = 'a';
. g; l. E2 ^4 @, ?% b7 Q" k* g" S! [% S# p, k5 H J
ActionGroupDemo(Zone aZone) {
7 c& v4 T+ L7 }% U- U super(aZone);" j, D9 i7 H/ K, z3 [5 ]
list = new ListImpl(aZone);
$ F1 b9 j8 g6 v s* O# q swarmSetp();
3 o2 i5 z9 c/ R. ] y6 m actionGroup = new ActionGroupImpl(aZone);! \+ r! `( O* e: N
schedule = new ScheduleImpl(aZone);( S; B5 K& L; k# @9 D# M
try {* }" [: x/ x5 u9 u
Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 i2 B2 q; `3 m: m! H; b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! I( h6 k* m! K" U4 L
! K8 n; E# p2 N% ` actionGroup.createActionForEach$message(list, agentSel);9 s. Y$ G& Z$ k
actionGroup.createActionTo$message(this, swarmSel);% \5 ^8 A% |. R9 c/ ^4 |( J! w% ]
schedule.at$createAction(0, actionGroup);
) Q* ~" I8 V" G2 M {7 X0 j C schedule.at$createAction(1, actionGroup);
1 Q5 s* w; x( ]0 E C3 v/ O2 }/ m schedule.at$createAction(2, actionGroup);7 ~' _2 K2 r& b: r3 |- V9 s2 c
9 `5 a- `7 V; e
} catch (Exception e) {
! r z) ]& n% ~* F2 J! ^ e.printStackTrace(System.err);1 W/ I/ e6 w) c
//System.out.println(e);! e2 q) n* c! v8 I/ F- K( q+ Y. `
System.exit(1);6 G/ U, D. u+ M0 C
}/ q9 l$ H( L4 ? f/ E( y
d; v: K+ c9 e3 o' J
" {( W X( H2 U }
: J( i1 ^' w# m. e" \9 \* S% a* v/ v
private void swarmSetp() {
/ \0 ` ~+ q4 ^% P# q# X# b list.addLast(new Agent(Id));. P+ ~) Q7 L |" K9 q. W8 ~
Id++;
5 @! F# g8 w! r; N }
7 a& i z: t2 Q. D6 e- Q$ n6 R1 r# P$ G- @5 D' a% R t* q
public Activity activateIn(Swarm context) {
. _+ J6 Z# K- F6 E super.activateIn(context);3 v1 w$ G0 J2 H/ M+ m- Y
schedule.activateIn(this);: ~9 E- i( x$ z! e! z' \
return getActivity();1 s" Q9 y6 i8 \- ^9 `
}7 A" e3 w! {# k" O
, M7 y) h& E2 L8 D$ y f" W public static void main(String[] args) {
& A, x# z& U0 w8 i1 j Y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& l+ }: f( a1 b e9 F
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 W+ `. T. \: a: D B8 l- J6 c& V
swarms.buildObjects();
- Q6 R; h! a- v8 a( z swarms.buildActions();- j: m0 v, J# t- b
swarms.activateIn(null).run();! m1 q" N* Y' |2 a! q- n
}: E& l' Z, ~: ~/ Q* u9 O4 K8 A
( m! ^; u1 ?8 G6 V9 b9 ^: G/ p} |
|