|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ R9 K( X+ V3 [/ n5 a8 C: r
/ Y; r* W5 D9 i4 [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ g2 U' F" v/ F9 e) Z T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. L; O8 R2 u& K! p
swarm.SignatureNotFoundException
6 Z3 ]4 H: J3 g% Z9 C/ e at swarm.Selector.<init>(Selector.java:76)
. |6 B ~& M# n# @4 t Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* @6 z0 p# f+ d0 L at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 Y5 C3 Q `' j" p6 a( \
4 F R9 w9 u! @+ \! y2 ^+ [9 Z( \" {7 T
import swarm.objectbase.SwarmImpl;
& K/ o }; ?* G9 G* |import swarm.objectbase.Swarm;
' w, [- a3 Y8 G! @import swarm.activity.ScheduleImpl;
0 K, t; j0 Y g5 m: G9 simport swarm.activity.Activity;
w: L. z3 K6 O0 U7 c* Bimport swarm.activity.ActionGroupImpl;! H8 m: l$ v0 s7 W2 t3 E
import swarm.collections.ListImpl;+ |# D# `4 ]: V& U3 Z; m
import swarm.defobj.Zone;
+ }; [5 L- ^! `% Y: limport swarm.Globals;9 m9 u$ s- J7 `+ r. |. W6 C
import swarm.Selector;
* I) C3 Y$ F! K% i- Himport swarm.activity.ActionGroup;
- N% N) I) E# M* z' ]- xclass Agent {) G7 O( G" w' \: N, a
char id;& r+ S5 {# Y; U0 J8 f" d
. S9 r5 ^0 x* A2 o$ P
Agent(char id) {
) W" T8 R: q+ a this.id = id;# d* r# C) [+ z9 f
}3 y8 ^0 F2 M4 i" Q) d
: s# i2 Z% ]) g+ q) ?, e7 a public void agentStep() {
3 k! c x0 I7 b4 I System.out.println(id + ":" + Globals.env.getCurrentTime());
# Y, h3 l+ H: F* b }' N( d, y5 g4 n W% s2 o5 z/ A
}' t$ @9 H4 p; j0 x& X( t% K+ B
. |7 N, D: r3 O" @public class ActionGroupDemo extends SwarmImpl {
0 n: x- G' }6 z0 |( X( G& i' E+ J ScheduleImpl schedule;
7 e8 H8 S* Q; |2 d8 r ActionGroupImpl actionGroup;
$ h4 v. X' s6 z1 C2 d! z- k ListImpl list;
9 S' B. n9 o6 Z( ], `* d, ` char Id = 'a';
# o" \6 j! [1 A. ]4 D* d- B1 @5 }
: q4 ~+ h! ?& E( [ ActionGroupDemo(Zone aZone) {
! z+ }9 Q: c( P1 E" p# J super(aZone);
; R! ^0 P# g9 P n5 v( ]: B3 p list = new ListImpl(aZone);: K0 Y# q( F- |; r! r: K
swarmSetp();
" S$ x/ T3 }6 j3 n actionGroup = new ActionGroupImpl(aZone);
, w7 A4 W7 r9 g6 w9 |" n7 x schedule = new ScheduleImpl(aZone);0 R' B( s# a8 ^7 q# \
try {
4 x3 y, L& B8 a! q; G Selector agentSel = new Selector(Agent.class, "agentStep", false);
! O4 i+ ^( j6 d1 o- I. t Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& ]4 \6 E" w/ N e
3 R7 x2 Z. w$ s" ?. `2 m+ Y0 l actionGroup.createActionForEach$message(list, agentSel);
% W7 N/ G) \7 }# [& r7 P actionGroup.createActionTo$message(this, swarmSel);
( ]; \% |, [; E) `9 U' [ schedule.at$createAction(0, actionGroup);
3 ?. y% e; i5 d$ a4 f( D schedule.at$createAction(1, actionGroup);9 C) n$ B, V) b* u) s
schedule.at$createAction(2, actionGroup);
( |2 b0 ?$ Y9 H" |, P" ^+ z3 m5 _/ Y: Q7 L1 v
} catch (Exception e) {" J' R" S% l# l! w3 t
e.printStackTrace(System.err);6 U3 g1 F& T4 E6 h3 u
//System.out.println(e);
7 s( o( K) R# W System.exit(1);0 p2 W. Y7 j0 O2 g: o
}3 S& h# V& T3 t0 L- s1 o
4 x" p- D$ W* I& B# t& A$ U
: G8 p9 b2 t5 `+ i3 C
}
' s H& Z/ c% L7 T' Y2 f3 _
- a0 }9 O" |4 m7 X- n private void swarmSetp() {7 H' l7 \ Q/ C* a6 ~. V* e( i
list.addLast(new Agent(Id));
# p8 X) P6 b" g0 \) x) \: z, M: X Id++;
% k5 }% {% v3 T }
- r G& h+ K) W. d8 ~# l* J
" Z- e* n0 h. b: B$ v public Activity activateIn(Swarm context) {4 A8 `* Q. [: O
super.activateIn(context);
! y* H3 W( J% M& ?1 w schedule.activateIn(this);
2 ~6 @: d9 {! m5 L return getActivity();+ V: Y1 c8 C# r
}
5 r+ h0 N! ]. _5 c
; j6 M7 e3 y5 b public static void main(String[] args) { s( s* U$ H& H( e4 R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& p" Z/ t0 O% h% D9 |4 j
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: _: r. v, O; J. Z1 w' p swarms.buildObjects();
: o, L4 b8 M6 A+ } swarms.buildActions();2 L- X: x$ D0 I- T1 G1 N
swarms.activateIn(null).run();
% D) e: y! y7 Z1 P3 b% h }
3 H n T8 `: s F
& h9 ?% m2 t, ]1 }0 F} |
|