|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 n$ U3 ~9 C- i9 r+ R4 A% \+ ?
/ h; i+ U/ q! {8 N& g* P2 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ S. z8 ^) Z6 c# N' y- o2 b/ R" m# K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ |3 Q) }; U5 x# k" v
swarm.SignatureNotFoundException2 \6 Q. V7 f# l% [( Z
at swarm.Selector.<init>(Selector.java:76)% u- G$ B* w! M# V0 D( r2 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( i3 @' X; H. M' n at ActionGroupDemo.main(ActionGroupDemo.java:67)
# d3 K" O( C" s6 h( p* v- A) m) T0 F/ {& W
% `+ {5 K1 a7 T: @4 T" E
import swarm.objectbase.SwarmImpl;0 E3 |: n( R! u N
import swarm.objectbase.Swarm;2 j) U+ W0 t9 m
import swarm.activity.ScheduleImpl;) Y$ A9 c& c1 Y
import swarm.activity.Activity;
. Z5 I2 S7 O0 `$ f. j( ?import swarm.activity.ActionGroupImpl;
* I8 k; g0 F; G2 Himport swarm.collections.ListImpl;4 o( W# ?$ y+ [
import swarm.defobj.Zone;
& g6 m+ y. L% F5 G4 p% iimport swarm.Globals;. ?( I" `, Q1 r6 O; u4 j
import swarm.Selector;% G1 P/ s5 S8 C! M
import swarm.activity.ActionGroup; 1 U# q+ z, l+ s4 d
class Agent {7 n/ \, t; I. u! O$ A* u
char id;8 W$ R6 I# l4 J' B2 g/ t& u& `- g
$ Q0 u) ~" Q. z L: v
Agent(char id) {
+ k! D# z4 A$ O3 {8 B M' F this.id = id;6 T/ H4 o. i+ U+ j, }# X1 ]' J& Z
}
8 z" D: m; y* N# ?+ r8 v
' R; P8 c' A9 P5 l4 B, D public void agentStep() {8 [9 s, p: j& d' ^
System.out.println(id + ":" + Globals.env.getCurrentTime());: A2 l+ y. f, O# u& m+ _
}; t2 z& y2 M' I$ e' Y* z6 M9 ^
}* a* x) z' K( D& k! A" ^
$ l4 G0 ?5 h7 ?* b# x. u$ ]
public class ActionGroupDemo extends SwarmImpl {
: o% |" s8 Q3 d* c, \ ScheduleImpl schedule;+ E, D. l. Y: N6 A6 c2 m c/ J
ActionGroupImpl actionGroup;: v) v$ M' @" G9 U3 J+ i2 u+ K
ListImpl list;
6 F+ L( z7 A2 `$ e char Id = 'a';
$ }- [8 ~# l3 k3 W
+ Y v5 K% |9 t% R+ j. |' m9 x9 @& v ActionGroupDemo(Zone aZone) {
5 F; |9 u0 f4 x, q$ ?% c9 B7 _ p super(aZone);
! V4 q9 E& l4 X1 u1 X list = new ListImpl(aZone);2 d. w- R1 c$ Y$ s! p8 g+ L
swarmSetp();
; I0 ?" t4 P% f- o& A- S+ X! w4 n actionGroup = new ActionGroupImpl(aZone); _7 W ?) u2 \9 Z
schedule = new ScheduleImpl(aZone);, Q9 C$ y2 q6 h4 K0 e
try {
3 Q0 a1 E; R1 Q$ s Selector agentSel = new Selector(Agent.class, "agentStep", false);
" M) S' _& s) L2 z+ K( d Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) ]. k0 r( G8 Y
. g; G) \! r% d5 b: Z! a% E
actionGroup.createActionForEach$message(list, agentSel);5 }4 x. I3 c' U/ w
actionGroup.createActionTo$message(this, swarmSel);
4 I3 |2 V% `- u# j0 M+ g schedule.at$createAction(0, actionGroup);
: w. k( ]4 ]" l Z: d) V schedule.at$createAction(1, actionGroup);
! `: B9 Q* }9 Q: O0 ?& F schedule.at$createAction(2, actionGroup);) w) a, i$ n' s! N
7 b6 Q, G2 x2 e' L1 q* j2 K2 S } catch (Exception e) {& j8 o& Q, E S6 }) Q3 v; ~) u
e.printStackTrace(System.err);7 X" @: r1 I5 ^6 {# s
//System.out.println(e);( p l3 Q& w% T0 I* M5 z
System.exit(1);
7 {: r9 R. |( J) E# ^! ] }
2 K- ~: c+ e% G- U2 H- \5 t% u7 G; z6 m8 j: n% T
; b7 l$ C; `# T. w& n1 J }# ~! ~, u. ]% h6 u; [0 W* z
) h, p7 J& i3 j: ~6 G" Z4 s9 l! t" F
private void swarmSetp() {# m6 ^) o6 R2 G( T# I
list.addLast(new Agent(Id));- z, }% a u# |9 v: Z* p
Id++;9 u4 U- a$ L& q r. W
}
; }0 s' ]7 i* x& }) T' _. X3 ]
; Z d4 f! @6 S: N, Q9 S public Activity activateIn(Swarm context) {) v# C0 a5 [6 k1 b8 q
super.activateIn(context);' c% H& Y) {% ~3 z$ [
schedule.activateIn(this);
5 j) O: d' E) W' ^ return getActivity();
% ?7 Q9 c9 N) j/ s }
! k6 V, H r2 | Q
$ r1 m U) ^# c public static void main(String[] args) {
( ^5 q! [$ H6 b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& ~8 n" a! K8 l# m( U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' k$ g$ [" q A& i( X8 i
swarms.buildObjects();9 {0 N" A( a4 ]# H6 I7 j4 D, ^
swarms.buildActions();% c4 @4 B2 j) j4 l
swarms.activateIn(null).run();
5 V* W8 h* z7 d# F# k, j5 N }
, s# c1 M+ G& s5 z$ R: a6 U5 j; p, ?4 w+ }6 E
} |
|