|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ l, U( P8 `7 M
& H# D. }# |8 r' k8 m3 t2 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 N- k% N4 M- A% a9 q$ O$ Y1 X1 s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 G2 ~1 d0 {$ A* v- C
swarm.SignatureNotFoundException
+ Q8 E: k' z! U- D at swarm.Selector.<init>(Selector.java:76)& z# } }) R! C* h7 v a9 R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- P2 C$ l. X& i7 H. \0 A+ t
at ActionGroupDemo.main(ActionGroupDemo.java:67). G2 e& Z( P- t4 A
. d1 W- X8 }2 p' D
; ^9 p* U7 Z/ z9 @: P
import swarm.objectbase.SwarmImpl;
3 i6 t: k$ Y$ c* M" z0 ^, nimport swarm.objectbase.Swarm;
( j) A( X/ D' E8 K- {0 T! simport swarm.activity.ScheduleImpl;% j; K, w9 H$ b, y' H, T G0 Z1 y
import swarm.activity.Activity;
E N# C7 M! y% c" J; himport swarm.activity.ActionGroupImpl;
) s% j- Y$ {0 J" j$ z( Ximport swarm.collections.ListImpl;+ ]4 p& F/ a/ e* ]! ~% T; L
import swarm.defobj.Zone;
4 w$ s3 q5 m+ f3 mimport swarm.Globals;
. Z e5 m0 V" J! o) ~import swarm.Selector;
1 u5 _1 Q5 J* ?import swarm.activity.ActionGroup;
9 U6 \1 R P6 ^$ w0 K! b5 ?, }( eclass Agent {
) m" A6 m1 l$ ]: ~ char id;' j0 _ J) s9 U; W# R
$ r* u* ]4 l/ Y" N: h
Agent(char id) {
% t. X5 ^3 T' z2 J( }5 O this.id = id;' e4 `! q9 l2 \0 N+ c& H
}2 G. O8 w8 R6 C& T; Z0 C' ], w
& @) k3 _, K; x [/ Y O public void agentStep() {! j: i& n1 ^$ L
System.out.println(id + ":" + Globals.env.getCurrentTime());% o% o$ _( y# U
}
, o$ F4 f, S2 D4 X8 `# z}0 m9 w; }( F6 W! o
5 F* R, |. ?, e! Vpublic class ActionGroupDemo extends SwarmImpl {8 s; z) m3 g, a* R" r# P* Q7 R
ScheduleImpl schedule;* k3 t4 C5 G& ?, R& H- o4 f
ActionGroupImpl actionGroup;% p0 A( Q0 u, r0 e4 v
ListImpl list;5 [' S$ b/ d# T# E2 ?1 T* [7 U1 d: i
char Id = 'a';( C {. p' Y5 z5 W @) I. L7 _+ i
! G: U' \* Q% h8 {& E7 U+ Q ActionGroupDemo(Zone aZone) {
$ R2 j' W& g& l* {3 | super(aZone);
$ M! B8 I7 t R* Q+ M$ C list = new ListImpl(aZone);, \4 ~/ y. z7 |& |/ T4 F: H m
swarmSetp();0 Y. }+ _2 S8 U( w d! ?: v
actionGroup = new ActionGroupImpl(aZone);
/ P. \; E% X% `3 }% Y schedule = new ScheduleImpl(aZone);
% G3 R ^- E1 | try {$ F6 L/ G+ N2 C, u1 Y- a
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) S' \& d2 Z f! `* ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 x4 T4 Q, r, e! }: {+ w
0 ~& U$ v7 `# k( Y7 p3 h3 W actionGroup.createActionForEach$message(list, agentSel);
2 W* @* d ?# `1 J. P X actionGroup.createActionTo$message(this, swarmSel);
: V# ~/ y* k0 }: T9 e, ~+ O schedule.at$createAction(0, actionGroup);
' l; c3 w/ V1 l schedule.at$createAction(1, actionGroup);
* G6 u. U- y2 O$ ~+ g schedule.at$createAction(2, actionGroup);% ]( j' s0 M- t2 ^" O
p0 P! O: A' Q' W! W
} catch (Exception e) {9 `, t7 K/ I- b7 \6 a+ w9 T0 a4 o
e.printStackTrace(System.err);; E9 S9 k0 N( D% X7 `
//System.out.println(e);
" n7 d5 w; ~& m( O System.exit(1);6 |5 c9 ^- m4 Z; H+ T; |( P
}! M' Y6 l2 s; g! o4 A0 \" a
! m% w0 G$ @: ?7 C4 k7 Y8 O: {" p
}
5 p6 S0 W6 y. t$ r5 K' ~% I8 u3 A
- e- L& x6 m" Z private void swarmSetp() {- s0 j1 b/ x- i) [
list.addLast(new Agent(Id));( V2 A! e' J/ s
Id++;4 [! O$ S2 o I7 v. L
}$ Y; t9 ]) n' }
$ D, U' {1 \1 g6 C
public Activity activateIn(Swarm context) {5 S4 K" ]7 S1 p% r6 F- y' I, l; i
super.activateIn(context);
9 w. L# C7 a* T5 a1 B6 F schedule.activateIn(this);
2 K6 m7 N" u" j3 C# R+ h, y7 b return getActivity();$ Q2 @& u; j0 d6 P4 z q' f
}
2 J$ b' z q0 M# G0 h0 ?, D
; o E; I" j# l+ t public static void main(String[] args) {% D1 l( b3 {1 ^* ^
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 X, e' [* z% y8 p- T: p Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! v3 }* i2 `0 D
swarms.buildObjects();6 D; l) S0 P- S# _7 ~& P
swarms.buildActions();+ A# ]3 `, ^9 [; d
swarms.activateIn(null).run();# [/ ]7 H+ r- k8 O4 D- ^: d
}# P8 A. a$ E) @4 d
/ j* y. _8 q* W
} |
|