|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% _2 _7 Q6 Z- t1 W5 g2 R. L$ y8 N9 w" h! x7 c' V% n5 K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& ^0 [7 S3 K) }! O0 f# C% R* b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 b% f& ~% `- M' N0 R$ y
swarm.SignatureNotFoundException7 P. Y) r# t P6 l% ^' o
at swarm.Selector.<init>(Selector.java:76)8 u& |+ ]$ _0 V! c2 \% a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ b; D* |/ h" t, g2 s/ q at ActionGroupDemo.main(ActionGroupDemo.java:67)7 V' {. w% r0 K* S. t$ Y
! L* B6 W0 [3 U/ N1 x- h& M" r, @2 D: I2 g; N+ Z3 I! ~
import swarm.objectbase.SwarmImpl;
+ n+ J: d" V( _% x5 S% Fimport swarm.objectbase.Swarm;6 F& f: t0 m) a
import swarm.activity.ScheduleImpl;6 P; @. \" ?& T+ H
import swarm.activity.Activity;
* O0 d8 J, ^9 k& Limport swarm.activity.ActionGroupImpl;
2 R; f0 v8 R y @5 E9 yimport swarm.collections.ListImpl;# G( d. n. L0 E+ o' o' t/ l
import swarm.defobj.Zone;
' k/ B9 i/ [5 N0 dimport swarm.Globals;8 o6 C v9 g( Q/ e% G" s
import swarm.Selector;
0 z5 @- n2 j! \import swarm.activity.ActionGroup; - e9 f* W+ l1 n
class Agent {" y4 B, g1 s; J Z1 Z
char id;
! `7 H# i' {$ f. [( Z; g5 B1 c4 A. k9 S& [
Agent(char id) {1 \7 s$ y `: s/ a/ k0 D
this.id = id;
0 a7 i6 X7 y9 i6 t0 r; V8 H }
8 @! M K* H" v( f) s6 f" K" a8 Z9 h! L5 s5 L
public void agentStep() {) B1 H* m' ^3 ]+ N. l
System.out.println(id + ":" + Globals.env.getCurrentTime());/ |8 N& M. ]0 _) \8 V& @7 L
}* m7 w, \1 d) t5 m8 `& ?
}
# Z/ j' T9 b; d: B( i. l9 |* q% e3 w. J6 p) ^% b
public class ActionGroupDemo extends SwarmImpl {: ?. x# ~& }& Y6 k) f
ScheduleImpl schedule;. h4 v% u0 ?7 a6 I e6 e( ~ f4 O7 [9 I
ActionGroupImpl actionGroup;
- v$ U7 @7 a! c9 g6 P ListImpl list;
0 r( r/ T- Z# X% w% S* Q. f8 \ char Id = 'a';
1 G1 S% B1 E% N# D3 P/ z, L+ Q% {2 o& S/ V3 o5 |/ V
ActionGroupDemo(Zone aZone) {
1 k' A0 m j3 F super(aZone);3 P: y+ i: ^- C9 X
list = new ListImpl(aZone);
- o" T0 f4 }: ]' q3 ~ swarmSetp();
* {, E5 R+ t2 H/ l c0 J) i actionGroup = new ActionGroupImpl(aZone);
# K! D9 A$ ^9 e8 B/ {% _ schedule = new ScheduleImpl(aZone);
, V* n- k o# E* s try {
# W) v/ c5 K" q9 c% q9 ^ Selector agentSel = new Selector(Agent.class, "agentStep", false); m0 m6 {6 Q/ c6 K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 @% A: E8 r( m1 k* @* ]
2 { [- |) K+ E, p actionGroup.createActionForEach$message(list, agentSel);
8 B/ A! h; w6 U: a+ t) X/ E& y0 U actionGroup.createActionTo$message(this, swarmSel);
4 u) ?, J p9 ?; L+ h s schedule.at$createAction(0, actionGroup);" O( Q7 I% a5 Y
schedule.at$createAction(1, actionGroup);4 k6 G) h9 L* K7 G$ T' T
schedule.at$createAction(2, actionGroup);" [" J" _( t) p- W6 \
% u; b/ k; v- Q1 N- r/ [ } catch (Exception e) {
* O/ T D2 u3 b" r% k+ ]( h: o e.printStackTrace(System.err);
& f+ t2 ~0 e/ P+ |4 W //System.out.println(e);3 C% I2 t4 y- A1 t4 w! D
System.exit(1);, V. L3 r3 L) U/ T; U/ x+ s
}
4 U5 \! M" c! v6 B$ F% ]2 O* j% x2 d& C6 e, {
/ n- V+ O: ~# i
}
# I8 \: ]6 S! M5 k( |" g6 H0 c; R3 f, D# R. x! l3 c
private void swarmSetp() {- w8 u1 ]0 L: N: @
list.addLast(new Agent(Id));
: r2 b( j( [' v' r0 d2 H, K: y) W Id++;
9 Z9 @9 X1 W1 K! N3 [: N; k0 } }
" S2 R: K# j$ \1 X% V! q( X+ R( I$ Q' f2 i; d8 Y4 U. N
public Activity activateIn(Swarm context) {
* @9 i, v# h2 H$ t/ J super.activateIn(context);
% O" B9 m5 k0 k6 H* B6 b% m schedule.activateIn(this);: K L; X! v# e9 r
return getActivity();' O2 w) M3 k* y3 M
}! {0 Y; m( A& r( ?- p
% e, p/ e3 i; A, h0 N7 t public static void main(String[] args) {
" G# [+ N5 d2 ]/ ^ S* S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' Q5 O( U9 P6 Q l& ~
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. H$ q+ X1 g* ], @' a1 C swarms.buildObjects();
9 @$ U7 M& S9 A6 A; \ swarms.buildActions();
* z5 q5 b6 X6 N. ^9 W. g6 u$ S swarms.activateIn(null).run();. ]/ `4 Y9 G1 o. A( Q7 r1 L% \. ~5 G0 }
}1 H. E6 M6 r& N# |
$ f& Y" g+ Q, m/ S/ g# \4 `) q
} |
|