|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / i7 I" _" v: R1 O7 g) E
+ ^# a( w& j8 z) |( Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 j o* N5 K0 _ ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. D$ T8 n1 S* P
swarm.SignatureNotFoundException& t6 q1 R8 e0 v/ y2 b) R5 _+ n
at swarm.Selector.<init>(Selector.java:76)' n) P6 a. R# l$ u. V: J8 r# N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 H! D v+ U J1 f) o4 K% U at ActionGroupDemo.main(ActionGroupDemo.java:67)- @2 o1 K# `. c4 m! Z
* b7 Y7 V; X: {& z/ S
9 ]. f+ P0 O, ^) j" p; y
import swarm.objectbase.SwarmImpl;# C2 F2 M% N7 F+ r) q
import swarm.objectbase.Swarm;6 w/ k( l& x+ [% I0 S
import swarm.activity.ScheduleImpl;
5 p) I4 M5 O. }+ `3 simport swarm.activity.Activity;$ A2 l" ]( D2 y. U! e3 n% P
import swarm.activity.ActionGroupImpl;
' n/ R5 L+ ?) {8 T; a1 c5 \4 vimport swarm.collections.ListImpl;8 M8 I, d$ C( P" w$ Z. v! p
import swarm.defobj.Zone; / a$ E0 z+ A' ?6 _9 s/ G
import swarm.Globals;8 d4 o) f3 ?. K, B- D! h
import swarm.Selector;
6 @# M- h0 c7 x; rimport swarm.activity.ActionGroup; / H( q; A# ^5 t% P
class Agent {* c6 `9 Q0 g) M7 A' C
char id;( R& u a& P6 c1 D" b
1 J/ C) B( S7 ? h8 G. [6 K3 L* v+ W Agent(char id) {
* G, ?" w7 L% O- G- P1 i" c9 O7 M this.id = id;
0 Q$ V) j/ V8 L% a! m2 X }
; ^, g O2 W1 |' f/ M8 ^. E2 V3 P& t3 i! T3 h
public void agentStep() {3 [2 \& B! w! ~: O7 @* l r
System.out.println(id + ":" + Globals.env.getCurrentTime());
% }$ Y3 ?* k+ g8 _7 ]8 s- z }2 _! Y+ P* n8 u6 J/ P
}
8 Q' t) X9 q& C9 }$ ?: L0 P2 ?: U4 g7 Z
public class ActionGroupDemo extends SwarmImpl {
, Z4 J2 ]3 D2 a) C$ _3 o$ x ScheduleImpl schedule;/ x9 G! {9 Z: ]+ Y! |
ActionGroupImpl actionGroup;" o/ n5 L2 u. m7 j( Y! H$ I
ListImpl list;
" N/ c) Z! q+ ^, Y$ ~: S char Id = 'a';
# i) z3 q! d' w4 V' v$ M! v- ~3 P+ n
ActionGroupDemo(Zone aZone) {4 c0 y% F# i- H4 t0 M7 ~
super(aZone);/ p0 U/ s2 a9 P
list = new ListImpl(aZone);
$ Y/ H! _8 o( {! i swarmSetp();0 U: [) g' ?9 s$ A: ~
actionGroup = new ActionGroupImpl(aZone);
2 `; q% p5 V3 o: | schedule = new ScheduleImpl(aZone);, l+ N" ]5 F7 k
try {
3 X. a! g9 v8 S( I! @ Selector agentSel = new Selector(Agent.class, "agentStep", false); f3 @( }5 r9 k7 N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. n+ L ?2 C1 M3 T/ B
H- a) u# \& z/ H# ^
actionGroup.createActionForEach$message(list, agentSel);
, [: l3 I, p7 p actionGroup.createActionTo$message(this, swarmSel);
% j6 e* j' [0 b' k# m1 Y% Z schedule.at$createAction(0, actionGroup); X+ C0 u9 _9 H0 _- D
schedule.at$createAction(1, actionGroup);2 N7 w" D; c& U! t# m4 {
schedule.at$createAction(2, actionGroup);% b% p2 |3 e. X# x7 O# i
" o$ x4 Y2 Y& e/ `: @2 G% [/ i } catch (Exception e) {
. M8 |1 K; Y0 N/ x e.printStackTrace(System.err);
/ e7 b. L. V- J //System.out.println(e);
7 K L4 T3 y8 }) t+ a4 q* U3 s System.exit(1);# \% @( F" B, e, V& \8 H- D) e; p
}
. A& y! a& N9 s6 X; z6 S- Y( a: Q' c, X6 C6 l
" R# u( P, ^& F7 S' Q2 K' N }
! e& |3 R) g g" P. k" T8 x8 \, r# O, }4 T% k/ R
private void swarmSetp() {5 J1 T0 D: \1 a4 q
list.addLast(new Agent(Id));. }$ K9 H2 Y* `8 ? U8 p! s
Id++;1 \6 c) h) E. V; Z! ]2 m0 ?& E
}
6 R- [& `$ u: ~% e- y; G) {3 H% d: ] g) D; e
public Activity activateIn(Swarm context) {% T) m% j% ^! I! c( D! B) u+ j
super.activateIn(context);
5 N/ T% {6 o S# \0 ~4 K( z. k" k. N schedule.activateIn(this);
! q! u2 q, w3 Z- @5 I* H/ x1 e return getActivity();
) {7 F$ Q& _7 C }
5 \& @7 D/ t! h* L Q) A8 m; L" S5 N2 n
public static void main(String[] args) {
- P/ q' |- b( U+ {0 z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- N; I/ r' f, a( \! T. P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# _: o2 m. P, Z6 n; G
swarms.buildObjects();& r0 {5 v& @4 `. q- q; D8 h
swarms.buildActions();
: G! V0 ]9 d% x: t swarms.activateIn(null).run(); B/ ?9 f+ V% {. J% o0 r
}
( v2 _ a6 I5 k* l* l& c: i9 s2 X) F: u; h
} |
|