|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 o+ Z9 h+ S% }& G' ?. T' U0 w1 f i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. d, i* f/ p' U$ r8 C1 ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 w0 L1 e6 Y( Q+ y0 _
swarm.SignatureNotFoundException
7 A% C w. l( r! l. y/ u at swarm.Selector.<init>(Selector.java:76)1 c7 X2 q' l+ A _8 ^1 w
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 ~) v' T, e+ Y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 g; ^, ~, }* s- N( X/ @) p8 q0 |" t' C' h: X: o2 O' E1 O
% a" ] n2 q, H
import swarm.objectbase.SwarmImpl;
" N! A1 F2 ^# ?7 o& ?, o# h# _import swarm.objectbase.Swarm;4 J% }2 R+ _9 B( @# _4 N# t/ d
import swarm.activity.ScheduleImpl;2 h! q% |' [) x0 X% }
import swarm.activity.Activity;6 v! I& v; }% ?( j
import swarm.activity.ActionGroupImpl;% N% B9 {5 i0 d) ?
import swarm.collections.ListImpl;
% B* I, L& _# G# X9 K7 a0 ^import swarm.defobj.Zone;
. z8 L0 Q. [: ?import swarm.Globals;5 B9 K: @$ V( T/ e
import swarm.Selector;, b; ?( w" x a5 X6 N' s
import swarm.activity.ActionGroup; 1 H: E* l: W& u) N
class Agent {7 e1 j @/ P- j! b( W
char id;
' X- N* v/ A8 O' k* I' G$ C; t3 x6 G
Agent(char id) {
9 w/ P! L2 {% s; w X, | Q this.id = id;- p4 b" J8 j- j
}: P# [6 o( I9 h. r3 F- c$ R* b: V
\7 H7 o) W0 l# P% R" w$ e9 L
public void agentStep() {
% c8 {8 E5 J1 Q3 \+ `6 k% ^6 F System.out.println(id + ":" + Globals.env.getCurrentTime());3 J" r8 W7 G/ s/ C( K. H* l* s" D2 l
}
. h- C d& o% r3 L}3 F3 H7 W3 M7 \" ~4 E+ {% G: Z
6 p9 a$ N" q8 m. H2 z3 A8 opublic class ActionGroupDemo extends SwarmImpl {6 L' ^/ p* q7 G/ [& W$ Z* s1 b& D
ScheduleImpl schedule;
. H$ M: u7 Z3 z* U/ B7 \- Y: n ActionGroupImpl actionGroup;
" E( l, `3 Q- r3 j( a ListImpl list;
, k5 @! C' H( y( ~4 Y6 d, o char Id = 'a';
& | l4 a& O1 V
9 h5 I" |" b6 `0 G& r8 @ ActionGroupDemo(Zone aZone) {. [0 N- C" q; q- Y# c" |
super(aZone);
4 u9 m4 a6 ?' w/ o; |; J list = new ListImpl(aZone);3 J6 f2 e" N* l& L- x R& l- \
swarmSetp();
) `. [# o) n, t8 t7 l+ m6 A) W9 i! I actionGroup = new ActionGroupImpl(aZone);8 I: U, P& y% V. a
schedule = new ScheduleImpl(aZone);
- r S8 q+ d; w try {
5 _# Z3 {6 e3 E$ _, O& l" r1 ]) K Selector agentSel = new Selector(Agent.class, "agentStep", false);
. o# U1 B8 Z p4 C* r5 ]3 o, x) U Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( {' T* @3 g1 Q, V) e j) n
! F ?: ?7 _3 G. C( u4 ~) J6 T actionGroup.createActionForEach$message(list, agentSel);$ ~ d/ K5 n. }8 R+ R" y; L
actionGroup.createActionTo$message(this, swarmSel);
% [( e+ d. ^. b; z- z, \+ ]1 Y4 l schedule.at$createAction(0, actionGroup);
# K' _/ |+ c. G }" Q7 s schedule.at$createAction(1, actionGroup);; x @1 z9 p7 ]2 S+ x/ L; C
schedule.at$createAction(2, actionGroup);
" u2 o9 b* @+ M4 {' O0 p$ v$ x/ d/ c: W% w
} catch (Exception e) {5 ^) H* Y9 d+ e( ]" B" Z
e.printStackTrace(System.err);2 z" h% P# W/ D/ @- D4 m
//System.out.println(e);
& z [' G( _' i/ a2 H5 C" { System.exit(1);
% F" @! Y/ W+ O% l; f1 n. E" }- t }$ ~# _- o# c- u; s% ?
6 Y J% n9 y# C$ Y" {9 w* v+ R! @" b
}# H0 U+ J+ j: S6 a9 d2 A
7 C6 g M6 n$ j& P* i9 F0 ? private void swarmSetp() {# T: u6 \) t5 `3 v7 R) _
list.addLast(new Agent(Id)); f$ [ `# n. Y/ _
Id++;" m2 V8 V- |+ Q0 j
}
; l% h" b: V8 H6 |. g% E8 R7 F G. s, T! |: w7 R# x
public Activity activateIn(Swarm context) {
$ V2 b3 v1 k# O6 b* f$ W4 G; l super.activateIn(context);
5 t' K ]) `3 Z8 l schedule.activateIn(this);, q8 R E+ E2 U2 d' M. I
return getActivity();" D. {+ z: e0 N6 Q2 o! B5 h
}8 X- o |1 n2 J) Y3 t6 I
* a% J8 v( ^' A- O% ?
public static void main(String[] args) {: g) a5 p+ `# ]2 ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 ~: N! d! x( G Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 N3 Q1 d! Z2 I swarms.buildObjects();9 p3 d8 \) |' N+ b6 Y( S; S5 T
swarms.buildActions();' P& ]2 O9 c! y$ c
swarms.activateIn(null).run();4 Q Q5 |3 U1 e# E
}
5 I1 Y8 N$ O2 Q
* ?6 c& e1 T6 T, w} |
|