|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 _2 L$ a& c: U9 W5 g/ n' R
9 z6 a( r' u& F0 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 v$ e, Z! b& b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. l; g1 f/ Z$ [
swarm.SignatureNotFoundException
& u8 o2 l) W& C) T" {% A& k2 o at swarm.Selector.<init>(Selector.java:76)
- Y, h& |* N2 L6 ~0 @+ B: z( P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' D; n- Q" }( H at ActionGroupDemo.main(ActionGroupDemo.java:67)8 ~, `/ e- E& d; {
r0 L) _! I; K: z' N t4 y3 q6 R
9 V& J7 m" P0 s5 @' u1 p9 d h' @import swarm.objectbase.SwarmImpl;
* X$ G0 n8 T4 V) W) pimport swarm.objectbase.Swarm;, |' \4 \9 p. y" @6 B2 }4 J
import swarm.activity.ScheduleImpl;
6 e8 e) X, a" v1 wimport swarm.activity.Activity;
. ]' o5 p+ S/ n/ x+ `, B# K. s7 Himport swarm.activity.ActionGroupImpl;
0 Y- _+ g- @ k) u( z- zimport swarm.collections.ListImpl;
5 T0 o# e8 \( |) D* c3 Himport swarm.defobj.Zone;
+ t S! o6 w- k/ Y4 i3 m: Vimport swarm.Globals;
; O" p, B; l# Iimport swarm.Selector;* u) S2 m% ~. G* k: V# g+ I
import swarm.activity.ActionGroup;
0 {- k0 k2 l2 e0 Vclass Agent {6 `$ O& m% P% ] D& V5 F$ ?; Z
char id;
5 O; v1 m( F1 ~1 S j& a/ |) b4 ~1 f8 j/ u/ i b
Agent(char id) {
$ A& f' u. L, q! T+ A7 I- c$ I this.id = id;
' n4 p% M" O4 t6 u K }
+ q$ ^) d" G4 _0 W: l: ~
3 i; f5 S5 ?# D public void agentStep() {
1 T4 H* u9 }; y# D* Q. e System.out.println(id + ":" + Globals.env.getCurrentTime());
5 a7 Y/ v; a9 c }! n3 u }$ g/ L' X2 {
}
) d' X; m' q( P9 {2 |& x/ _/ x
) o) I: L3 u3 H) e/ [public class ActionGroupDemo extends SwarmImpl {
j7 c$ _& G% ]3 q) e ScheduleImpl schedule;7 Y! I" F1 x7 b% F' S" ~% v: L
ActionGroupImpl actionGroup;: E$ z( K) B7 E0 ~5 \. g' ^/ k
ListImpl list;
/ g9 B0 ~1 v4 b; t' x char Id = 'a';& p8 ^2 D9 [0 D# {- I* b2 m
; g, N/ l' G" n" d ActionGroupDemo(Zone aZone) { x/ T# u4 q4 l7 G [% j* x* R+ u
super(aZone);
3 }5 s W3 E! E) J: p, ]6 s7 m list = new ListImpl(aZone);
$ R4 K8 i2 Z f' l- E, h5 J swarmSetp();' a% a2 Y0 ?) a/ M
actionGroup = new ActionGroupImpl(aZone);1 Z( E: {* p9 n3 Z3 e
schedule = new ScheduleImpl(aZone);
, v% W, U( {8 n) |: n r0 W try {. d& i0 p7 I8 U7 G7 x1 c+ j
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 p6 ]2 s" k# A$ t B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* q5 t b* P( f( D * t w' D; y% \ {5 o
actionGroup.createActionForEach$message(list, agentSel);
! @$ h/ |& A7 E( Q/ _0 j% G: ? actionGroup.createActionTo$message(this, swarmSel);
# Z6 @* k" t: v0 K' H" c schedule.at$createAction(0, actionGroup);
: k6 ]3 k1 c4 V# r6 C8 \ schedule.at$createAction(1, actionGroup);! d& i5 L3 [' ^ S5 P2 T2 V' d% r
schedule.at$createAction(2, actionGroup);
/ K. F2 a3 |- q2 G+ d
! {5 N+ `7 K+ e) ~6 ]0 O } catch (Exception e) {
2 s, Y. O3 |' g- W! t9 X0 {8 \ e.printStackTrace(System.err);
1 Q v- b, y9 L2 R" }) t //System.out.println(e);. A, U. I2 ?* A. i, J
System.exit(1);" o0 f* P6 N% N3 D; m/ z4 i" t
}' z7 |5 e1 b0 [) u: |" [) t9 S7 O
" m5 a9 p1 y X* k9 x+ a5 p
8 c( _5 @ R# g! g" v$ b" l$ c6 K
}
4 v' {# z9 ?1 E, c3 c: a0 k
/ T+ ^* p( ]5 t0 y$ t. j2 [& Z. U private void swarmSetp() {
( B2 f0 u5 Q. g. m f) `1 L list.addLast(new Agent(Id));
% N# V6 L- ~1 P# m) q Id++;
# P; U6 X) D$ g e5 I, i }
4 C* y' C% J9 F! A e" D
3 ^+ K1 J) G- G: |- ~ public Activity activateIn(Swarm context) {
! ^$ z# E0 M) G" E( A% K super.activateIn(context);( H8 }; c# Z# u0 P+ F2 K+ b
schedule.activateIn(this);/ q( n+ i/ _# t8 J* P1 \# ?
return getActivity();2 ?1 ?4 ~ h+ n, v4 E
}
) h9 @" f5 N0 c& f9 l5 Q2 ^' K/ H- T3 N% a4 Q; Z) q
public static void main(String[] args) {4 `0 v3 c" |( B% w! H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, t! A: q2 E; j6 Y$ _. v Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( N# q; T% t3 {* n& m% |" G* ? swarms.buildObjects();
% j+ f6 ]6 [7 t- g3 K# e2 F' M9 e swarms.buildActions(); G$ Y) t9 t7 H3 ^, r
swarms.activateIn(null).run();
2 s$ c3 T. J* g6 @" i; d) R; S }
- r+ a8 f9 @) |& `0 H
- \ i1 }" Y# X7 b+ _; l8 S} |
|