|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( ]) ` `+ J' V0 ?) K. h Y: N8 R0 C1 G. w& M% o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ E _) t' h1 @, C1 z8 w6 Y$ k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* l/ l. C) ^& ]; n1 A q' ]2 W2 j
swarm.SignatureNotFoundException
e1 ~6 K/ ~: u6 _ at swarm.Selector.<init>(Selector.java:76)6 e; U% A" t$ J" {) `$ C. }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: l$ b8 B1 x" ?) R2 X0 J9 T! Y at ActionGroupDemo.main(ActionGroupDemo.java:67)3 ^; G. K( C" }! B# w
% q' \0 s- d1 k# v" B
. |; M# @3 X Z6 \3 l6 Z0 x6 ^
import swarm.objectbase.SwarmImpl;7 r: {2 B; ~' V/ v h. b
import swarm.objectbase.Swarm;* ~2 ~5 V" ]* s% i) O
import swarm.activity.ScheduleImpl;- o5 W7 `2 x/ ^/ O5 F" w' d
import swarm.activity.Activity;
- Q2 i( B1 y* N, l$ zimport swarm.activity.ActionGroupImpl;
1 Q% {; Q; _) F' t. _import swarm.collections.ListImpl;' [) P& H( R5 F h
import swarm.defobj.Zone;
# F8 d+ Q/ H7 N8 G) K3 {) iimport swarm.Globals;& F T# r+ J* }& T" }% J
import swarm.Selector;
3 U% |2 g3 F, T8 p0 [1 C- Himport swarm.activity.ActionGroup; % g: X! z6 _+ [ q$ a; m C4 G5 K
class Agent {
5 L+ _( E9 w2 X$ ] char id;
- S, R! v, S B$ P! S/ b
7 I1 ^+ W* r ^0 @ Agent(char id) {
4 N* Y' T+ A& C9 [/ p this.id = id;
7 d- P2 W9 b1 e8 @, W6 P4 @ }
9 o1 N2 v# u; ]0 O5 N" V' \+ x2 ?' m+ y9 |7 q8 T
public void agentStep() {
2 Y9 g" l6 L. u0 Y System.out.println(id + ":" + Globals.env.getCurrentTime());; ]$ D% J2 u2 h" n5 `8 C: h8 u1 u* |
}
4 }" g" i, l# r+ R! v: |% r1 Z}
# @" l( t$ z3 {" m% F1 L0 o) H' T5 L3 J2 _
public class ActionGroupDemo extends SwarmImpl {2 @0 z- U/ ^3 B/ s7 ?% K0 x* m4 M
ScheduleImpl schedule;
" l, g8 O/ W3 S5 H ActionGroupImpl actionGroup;! h7 J% \' N+ W0 t/ R( x
ListImpl list;6 c, J" \$ E- c
char Id = 'a';
) k: Q" ^$ T, T) G o9 a6 h1 @; U
: A0 N$ u& J! M$ y; p/ E2 t ActionGroupDemo(Zone aZone) {
8 c6 m) C3 @( A; v' N: T; o0 G$ Z$ ?1 d( o super(aZone);
7 k4 h& A% H! S* R) l list = new ListImpl(aZone);
6 U i( U5 T* g9 v7 A: O% E2 I swarmSetp();
+ R* x$ V! F1 w, t7 p: l) D actionGroup = new ActionGroupImpl(aZone);
4 K4 M: ?8 s- g! S) C schedule = new ScheduleImpl(aZone);' H0 _& N+ l7 a
try {
: L$ P6 ?' [$ ^8 s& j @9 Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 k B. c' N& h0 X; M! L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ ?7 K4 q b8 v1 H n' Y" \: n% Y$ r& l7 u
actionGroup.createActionForEach$message(list, agentSel);- t$ V" k# J; X
actionGroup.createActionTo$message(this, swarmSel);
. [0 } L( m& m* D' b% o. V5 i schedule.at$createAction(0, actionGroup);
. K6 o, S \) F- H schedule.at$createAction(1, actionGroup);
9 I. r; V3 a7 r; Q. c9 h% V schedule.at$createAction(2, actionGroup);
" T O, ?8 J" u4 x% x
6 a3 C, r5 X* y9 _# R. l: z } catch (Exception e) {
9 Q7 ?9 {; g: W* R e.printStackTrace(System.err);( G) Q4 }' X1 N
//System.out.println(e);
7 \+ t7 C' t, k- ]5 j) a System.exit(1);
& X t( o& u v: n5 h: Y, X1 S7 P }
3 z) q! I, d' i- @9 Q8 S
% w& H* O' S5 q8 e+ E) n8 d9 ~
}# B6 U) _7 d$ g: p: D
: v2 D6 m ]0 w2 U Q7 _
private void swarmSetp() {
, k' i- B9 i [% q5 X list.addLast(new Agent(Id));5 ~, v+ p0 X3 S" y T6 N
Id++;
$ c8 ?6 W Q/ b2 B1 M4 q, ?& j# U }6 l* e: N6 [5 I- E0 [" j
/ ~6 u9 c2 A# U4 O6 o public Activity activateIn(Swarm context) {1 b( G4 [6 f7 L7 c- d0 }1 D
super.activateIn(context);; p* F. y7 b+ y) F) O/ [
schedule.activateIn(this);
3 L; J3 H! L* ]( K5 y return getActivity();
+ ?# w) x, ~$ N' L; z) Z1 y }; E7 F+ ]/ U1 ]# W
6 W' y% X+ f$ l' S4 R; T
public static void main(String[] args) {
" B! |3 }! w+ \, }& j$ n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% V8 J# Q7 h; R8 {/ S2 O. [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 t# O, t( V2 ]( [ swarms.buildObjects();
* ?) Z- D6 w" _3 Q swarms.buildActions();! b/ L1 Y. P# G1 `
swarms.activateIn(null).run();
& q) M, n8 V2 G* F- { }& i- s6 `! \& k" n% p) L( d
. d( L3 H* f- n} |
|