|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% i3 ^& F6 t( {% A
) j9 j1 ~ ]9 X* ~; k& I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 I7 d; F4 I. d+ j C5 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 A7 L' `% }: ] f9 T7 e0 }; Y7 g8 j
swarm.SignatureNotFoundException% v$ y% X0 j6 S5 c3 f
at swarm.Selector.<init>(Selector.java:76)/ ^) C( r: Y4 R' G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( ]. |# u9 d% ]& ]/ ~4 G at ActionGroupDemo.main(ActionGroupDemo.java:67)
: A5 s/ ]9 s+ u3 S7 k: o: |0 C1 {9 X1 G4 U4 @2 J: g
* x) j( }# `0 u
import swarm.objectbase.SwarmImpl;
1 ?+ G% c7 G+ j* E+ o9 Cimport swarm.objectbase.Swarm;' [6 n: N2 \8 F9 Z# b
import swarm.activity.ScheduleImpl;2 a; X8 a r. w8 {2 z
import swarm.activity.Activity;7 D5 O: w/ m. p; R$ [; l- q
import swarm.activity.ActionGroupImpl;1 a4 |' _: i& k4 M& h& o
import swarm.collections.ListImpl;
$ `2 z e1 N, P& ximport swarm.defobj.Zone;
; m5 c3 A- b4 N* i; F. qimport swarm.Globals;$ a; K$ E4 L8 R- [2 r) `# E; j
import swarm.Selector;
" f$ n7 a. s3 s8 P0 Wimport swarm.activity.ActionGroup; 2 a1 h# V' A; e# F9 W
class Agent {
. x! M9 `! n. E. U# b7 w char id;
e, [3 n( g! `, a. v) R; \: w4 w. s! f# M Z
Agent(char id) {
1 h q2 ]2 K; y- |9 O3 Q* v1 M this.id = id;
5 L- Q9 b! h, W1 q7 ]$ ]! v }9 e6 u3 G9 X" B) u j
1 Q6 m7 o2 @5 f! a" l public void agentStep() {
6 p: P' C+ q8 _1 @1 t3 q System.out.println(id + ":" + Globals.env.getCurrentTime());$ k# }* t0 F6 z9 ]8 [% O. k* W
}
6 n; g) ], h( o, d% u6 s* z}
, L3 V$ M- C" d4 c+ M) {1 F1 m8 y7 i$ b7 L8 h' }' I0 p% |1 _0 `! C
public class ActionGroupDemo extends SwarmImpl {
# U( p/ w. ~/ U+ t ScheduleImpl schedule;
c& }1 S8 A. v* w ActionGroupImpl actionGroup;
. L* N/ Q" _! Y- r4 k; s4 e ListImpl list;
" p0 h7 o2 E3 g+ c8 V char Id = 'a';# ]- ^7 @1 c0 t% T p) h
! q$ W) \$ j$ \
ActionGroupDemo(Zone aZone) {
. k. S" N+ k" |; S. O6 o super(aZone);
- W8 Y7 p. q! d# @7 W+ t# s2 i9 { list = new ListImpl(aZone);
! e3 s" v" i8 m7 k( I } swarmSetp();
; `; K1 z$ g1 B& [7 Z! O actionGroup = new ActionGroupImpl(aZone);5 [% j: {- x5 ^3 g' |5 T
schedule = new ScheduleImpl(aZone);
% ] b7 Q; b j! f try {7 n6 m( l0 N0 c( [# j* {
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ V" z/ `( h/ E; Q) s: k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 _; x( C v- y' t2 t5 @
, L! ?( p' [- G( a
actionGroup.createActionForEach$message(list, agentSel);
0 p6 P- S5 H/ w* w( @$ D actionGroup.createActionTo$message(this, swarmSel);1 M# e% y' W4 X* Y( k7 z- V' C
schedule.at$createAction(0, actionGroup);) P! B6 |( o7 H; E6 \2 C
schedule.at$createAction(1, actionGroup);0 H5 R8 ^1 ?) |, e2 D' L
schedule.at$createAction(2, actionGroup);
/ E/ F# c+ \& t, e3 J# c
, R* m' ^( D2 c0 z K; O9 o g } catch (Exception e) {# d* i6 W( U1 R8 x& @
e.printStackTrace(System.err);
. u9 I9 w8 R' e* G% @) B2 V1 \ //System.out.println(e);: E; L$ V9 k" J
System.exit(1);+ h) M. v) q1 v4 C
}6 U& `, O* }& z8 m2 u
4 l- C) F1 T5 M) V1 M9 S0 u
3 L1 s0 K" ?" O8 l8 ?
}
4 Q. W8 G( I' L; n9 O1 X( i. ?6 g( o5 E' g
private void swarmSetp() {
0 T8 ]9 K- R8 Z list.addLast(new Agent(Id));
* H0 `. k" p8 n9 O1 d3 |- r3 ] Id++;! C- c3 m s8 [
}
5 q" M8 J2 d$ ?7 T3 C) ^. O: O' ?6 @& z. i) w: O2 L
public Activity activateIn(Swarm context) {
. e, l$ [+ t+ F$ g super.activateIn(context);+ l9 K6 U7 |3 {* I5 F
schedule.activateIn(this);, k7 v/ p) h3 j) d+ |' u, u4 }
return getActivity();
" C' l- G$ M, _1 H' k) V) x' z! c& m }. X7 F) b3 X$ U, r# c( [
0 ~$ Z: I# i$ M
public static void main(String[] args) {; @; e# ~0 D5 l& D) g% @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 T: R$ [: c/ u, {# M: j- S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) v: Q3 }; _1 Z
swarms.buildObjects();6 N, Y/ X, @7 k& O8 b/ b' p
swarms.buildActions();
+ x' Y, p% ?, n swarms.activateIn(null).run();1 i- z/ j# o- h4 `
} I4 w, ~: D0 i
# i3 i- L! ~1 k& j0 M} |
|