|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & t, J) d( o5 ^4 p: w& S
' i Q J7 {# g+ w6 R, ~! {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 I/ j- D" c& g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! Y) K) I) o3 b+ f" H# p; b# \swarm.SignatureNotFoundException
, c1 q9 q; I9 U% h: s at swarm.Selector.<init>(Selector.java:76)+ K; p+ O4 O& ^, q6 ?0 \: f I+ u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 S T5 T3 x& u/ {: @) g0 Y at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 j$ A9 I& I9 W2 K8 @
: F: d, h! Z! K \: J7 L' ^2 f0 g5 |9 `, B( e+ t6 ~
import swarm.objectbase.SwarmImpl;
$ p5 i. q/ C- m( h) Pimport swarm.objectbase.Swarm;/ Y& O5 f# @5 o& t% k$ m
import swarm.activity.ScheduleImpl;
. `; t3 b8 m/ \% M( `import swarm.activity.Activity;
; }+ j) K9 f" }( \, ~$ @) e# nimport swarm.activity.ActionGroupImpl;) z. Z$ V# H- p4 d+ _- C
import swarm.collections.ListImpl;3 [# x$ |3 ?& u1 ^0 y% [
import swarm.defobj.Zone;
5 \! E. l5 h. m. F o0 d" t& Z. r8 G himport swarm.Globals;7 l( z( t+ c; Z
import swarm.Selector;
9 ]3 h3 U" Q* K) k* U5 D" ^import swarm.activity.ActionGroup;
3 e; O/ y* z; G- \5 Qclass Agent {% u8 G) Q% @0 L8 ^/ p# \* t0 b/ W
char id;
. b$ v$ U9 U( `) I& S" w8 U
7 Q6 W7 F" D, \: {' c2 z Agent(char id) {; C4 r8 ]5 p( O: @ K( k
this.id = id;, r# {- t# {0 P" l' Y
}
9 h4 S% ~& {7 y6 J8 T2 a, b. M' V o; K' j9 U9 ?+ n/ G5 M* b
public void agentStep() {
) w$ [8 H& w& F, Z3 P- n1 K System.out.println(id + ":" + Globals.env.getCurrentTime());
$ D+ l' N" i" U, s( |9 s }
! y% x4 r0 u- J/ H} A7 x, d6 _* k0 A4 i- k6 Q
8 m0 Y; m- {% y6 A- G$ ~public class ActionGroupDemo extends SwarmImpl {) G9 k( g- e$ b/ t; `& D
ScheduleImpl schedule;
+ ~2 Z; _( v# k ActionGroupImpl actionGroup;0 Q- ]3 B- V9 k. l9 F/ ^
ListImpl list;
$ j+ h0 a) g" d# a2 t# W$ [ char Id = 'a';+ H S! r( ~1 H0 u) w% }
0 n$ m0 D0 r) C U+ z) \2 c9 e ActionGroupDemo(Zone aZone) {
. ], s* k; O7 M4 J" H super(aZone);
/ f3 ]4 Q% F' b2 X: T1 t' F list = new ListImpl(aZone);
6 {5 ^* R+ V) y) i: U# [; k9 q swarmSetp();
. b+ c0 R( z- x2 F: k actionGroup = new ActionGroupImpl(aZone);$ ?) y4 N3 k: x3 x2 e* F' ^! o
schedule = new ScheduleImpl(aZone);
6 k. o2 F' g& w/ I try {9 L1 Y7 |. y; K. Z
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 H0 @( ?2 c/ w4 q3 L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 H$ v% ^6 e0 i
9 `6 T4 u; k, y actionGroup.createActionForEach$message(list, agentSel);7 M$ D8 i" l+ r" Y% k
actionGroup.createActionTo$message(this, swarmSel);
1 i" O* V; \' v2 c schedule.at$createAction(0, actionGroup);- }& Q3 N, c; y' f- p2 A7 e! K
schedule.at$createAction(1, actionGroup);
$ c6 ~) l) {; k$ ~$ s0 p6 \ schedule.at$createAction(2, actionGroup);
- \9 q( i* l7 h6 n1 C. ]7 O' E! r H8 w; Z
} catch (Exception e) {0 ^) X2 _4 E- [# G2 ]6 d9 Q, J
e.printStackTrace(System.err);, h% ]' {! O( J. v/ o( n' s
//System.out.println(e);
4 }* F, M$ r; H+ d! j! K! {2 ` System.exit(1);
% A5 D" s9 H% ~3 W8 G2 z9 w }
' {4 l. t- [! A3 N6 r
$ R/ T' @/ O4 S( p0 K
8 b" P% p. a& f" x }" d4 u0 Z8 e; R3 q0 |' s% g
7 h; @1 R& ]+ v9 }( A$ j private void swarmSetp() {
( H6 |, y! I& w$ W3 h7 u4 l7 c2 s list.addLast(new Agent(Id));
6 `, Y. x; J* N: c$ Z; `' i' h Id++;2 N) q' ]: R) o& z: V9 J: R* ?
}! U, U( X3 Q# ~6 [
3 R0 E- Q: I* _; }* ] | public Activity activateIn(Swarm context) {. q% J. L: F" J: P+ p0 ?7 o
super.activateIn(context);
) g: e0 C) }: F4 d1 u" a/ D schedule.activateIn(this);
6 c5 Z9 _; P: Q! ?+ J return getActivity();2 `' V( W7 u! t- f' Z5 U9 T
}
+ v, Q) @( F( e# o/ U6 @5 p6 I% v3 r0 m8 u+ X% [
public static void main(String[] args) {* v" _ M+ b* Q: @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 ^# s. [/ g* x' F9 |% E Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ A h& q6 g9 ]) C swarms.buildObjects();
* w+ V6 k8 D9 Z, g2 S2 s swarms.buildActions();- o8 k7 @6 b' a1 e, l" [) g
swarms.activateIn(null).run();
7 E1 J' F! @5 j }& c U3 A9 J' G a D& v& i* e
) ~+ b6 S5 k! Z7 w" b7 j7 `} |
|