|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' A9 }- n8 M( M3 V
5 u1 W; Q$ u( x; r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, K6 A V$ ]: n3 N9 C5 z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, B7 Y$ ^% j$ D7 sswarm.SignatureNotFoundException. r8 g8 p# ]. k) s
at swarm.Selector.<init>(Selector.java:76)5 W: Y }, p0 U E( C) V6 M' ^+ \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ \1 P5 O: H& ^& ], a S7 k% Q5 A7 C at ActionGroupDemo.main(ActionGroupDemo.java:67)
# Z# z, j! }* G7 M6 v9 E
8 p5 Q. }) p0 o7 d8 y+ A: ?. |$ R" u7 J9 Y" h7 \$ N* `2 O7 h
import swarm.objectbase.SwarmImpl;% @) l; y3 n: B4 T$ ^( Y
import swarm.objectbase.Swarm;
' U( z! L. Q. _ l0 k# ^4 ^import swarm.activity.ScheduleImpl;5 g$ u# n+ W# p" ]
import swarm.activity.Activity;9 e( s; ~ N6 p+ N7 J/ M
import swarm.activity.ActionGroupImpl;3 h# B! M' \4 u
import swarm.collections.ListImpl;
% F4 W! Z+ f, i$ ?0 L$ rimport swarm.defobj.Zone;
! m+ ^3 k- v X/ A% x$ n3 Fimport swarm.Globals;
. m" w, @' k% e3 F; T3 L C% \4 ^* ?/ J Iimport swarm.Selector;
* p1 s5 @1 v: kimport swarm.activity.ActionGroup;
/ e$ z( w+ t: Tclass Agent {- Z! u+ m5 ]# n7 N- o K3 b( R
char id;
4 a1 T3 L; \0 k3 w4 s. o8 K/ V, O0 [) |
Agent(char id) {
+ m8 |7 R9 m9 I, U# ~7 | this.id = id;
! X$ p5 [# z' G, L$ h' S+ G* I, d$ { }+ V; _ g; c' \* A
+ w( O; c' s# Z( A2 G7 V
public void agentStep() {9 C2 K" @. \0 N# n' F
System.out.println(id + ":" + Globals.env.getCurrentTime());
# B5 G0 {2 ~, i: E }
$ h6 m: D k" K4 ~1 d1 f* A3 v( A7 K}0 n0 U+ l) ~- F( ~; w% D
6 w$ E: d i1 Q6 g2 r) ^! Z
public class ActionGroupDemo extends SwarmImpl {( C% t7 X* x* \& v$ N, y( x7 G
ScheduleImpl schedule;
! x& k- N F4 o! h; J ActionGroupImpl actionGroup;
! C4 x. K- }) y. f# J ListImpl list;4 M3 z& x' H. }/ u6 s# \
char Id = 'a';
r/ v2 l4 b: b3 @
8 v1 O* z4 Z2 [. H% z$ X# I- E5 J7 G ActionGroupDemo(Zone aZone) {6 ^5 u; z0 h" z" _9 ^+ e" o
super(aZone);
6 \3 Y3 g2 E( E1 O list = new ListImpl(aZone);
1 \% B1 t n! C" J8 ?! @, { swarmSetp();2 H5 l1 @! P; z, o
actionGroup = new ActionGroupImpl(aZone);1 R0 T- I6 x0 f' A! `
schedule = new ScheduleImpl(aZone);& ]8 t+ I u7 k2 s- ~
try {
( r9 q& t; {& K* ?- g Selector agentSel = new Selector(Agent.class, "agentStep", false);; h$ N0 u# F: A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% I: c; Q* n* x; y/ h
% G% k# D% f! ^- ^ actionGroup.createActionForEach$message(list, agentSel);
9 I, S- e/ ]! R' R) W actionGroup.createActionTo$message(this, swarmSel);9 B/ J" Z: h4 y2 t% O
schedule.at$createAction(0, actionGroup);; {% v; B1 q7 o( A+ n! G. j
schedule.at$createAction(1, actionGroup);
/ Z- C; D. a: C( ]1 [ schedule.at$createAction(2, actionGroup);$ D8 R0 c# B2 O( d/ B5 X$ H1 b
% s0 U+ e' Y. X; n9 ]
} catch (Exception e) {
1 M, q5 H n; U6 l e.printStackTrace(System.err);
* R. A$ }6 X; [# P //System.out.println(e);
: n. M; f; e2 O" s4 }0 j; ^. G' T System.exit(1);
! s: }7 A0 l2 V' r2 ` }
4 ]" J3 b3 K5 f% i& }% Z3 l$ d) b9 }) Z& s/ k
p7 t4 V9 @ g2 l0 @0 e/ L }
1 \' k1 b1 R1 D( l: G8 R) G2 |
0 Z! ?3 x+ y5 o private void swarmSetp() {
; @' A) ~# j5 V5 y list.addLast(new Agent(Id));' x6 w! v( M6 x/ ^8 ~
Id++;
0 } k/ m/ ]/ J' \' ^ }) B. C4 f' l5 X
; `) z' I% r( c public Activity activateIn(Swarm context) {8 e4 y0 k( s1 {+ |" X
super.activateIn(context);& i. I* Q, Q( D) L: {0 V
schedule.activateIn(this);7 m8 Z' W8 `5 y( }% k
return getActivity();
( {4 G$ J" P6 Z* D) d0 h j- u }1 U5 f5 ^- w$ l& Z
) K+ ?& d, C* m0 |$ i6 H) Y6 j/ u
public static void main(String[] args) {
% T# B# b. n5 X6 {* Q; w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: ~8 h" |/ F3 z- p, Y& U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- {$ G$ [1 ~0 o swarms.buildObjects();
* J* Z6 Q- Z& M9 V. ~6 j+ |' }1 y swarms.buildActions();
4 G. h# I+ P4 O) v swarms.activateIn(null).run();* x) s5 m# V. Z9 `. u
}7 h1 n3 j" b8 ?
% D. y+ Q7 ?6 h X% E6 ~1 [} |
|