|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( O8 `, T; P7 _# a- y$ N! D+ h1 |* |* d. m9 a1 p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! n6 c2 Q; j6 C6 |# V. m2 x, S9 ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 ]: f& l b1 K
swarm.SignatureNotFoundException' |+ P& e; K8 l: q7 j; v! R% z; x
at swarm.Selector.<init>(Selector.java:76)
" F! J# ~# ~% r3 o2 P! z' @ at ActionGroupDemo.<init>(ActionGroupDemo.java:37) s, ?' m4 {% S3 g W
at ActionGroupDemo.main(ActionGroupDemo.java:67)8 ?4 b* D/ E) ~, C7 n
% h' i" T* k+ I* o4 y% c
! |' S% \; G) o2 j: d' l5 W( r
import swarm.objectbase.SwarmImpl;
" Z7 `2 x3 k% e- pimport swarm.objectbase.Swarm; D$ X. l1 d2 \1 v
import swarm.activity.ScheduleImpl;0 E( O' H9 Z3 J8 y6 k, u
import swarm.activity.Activity;
; V' w& s) @4 X$ N' q9 x9 wimport swarm.activity.ActionGroupImpl;/ A' i3 k5 o4 G& L
import swarm.collections.ListImpl;
' q* [( Z0 }, w& Eimport swarm.defobj.Zone; $ N" i# L: A; K+ S9 t
import swarm.Globals;% ^* S+ h: ]3 e
import swarm.Selector;
7 u* j# F' p8 u" V- Gimport swarm.activity.ActionGroup;
( `$ s3 W5 N3 c, |# nclass Agent {/ ` G, P/ I$ S; _( {
char id;
4 M/ I' n% ^8 n6 x! ~3 m
+ S8 S- `! t( a9 J% t Agent(char id) {
3 W* Z# ]& F4 F1 w0 a) U4 \ this.id = id;
% [: g/ J- A7 ~! l$ i6 `- Y7 c: e }% g% E- F/ s1 t% c% T
4 d2 J2 L; ]( }. E public void agentStep() {
' T, h. G2 }% d2 _% [0 p( z System.out.println(id + ":" + Globals.env.getCurrentTime());
) a6 z. B! d) G) I }
0 B9 o n( @2 w}
& I6 w" |4 D/ x' M4 s3 X, y# w, ?- [* L
public class ActionGroupDemo extends SwarmImpl {
6 }. ?# R) a0 V ScheduleImpl schedule;
& O/ {4 c1 i" X# Y ActionGroupImpl actionGroup;) ]6 g/ g U9 r K+ L! e
ListImpl list;+ T9 x2 t5 m) L2 H/ o7 a0 a4 [
char Id = 'a';7 @; n+ E+ B6 z- G A" R' s6 Z9 v e
- J! {) q$ u7 U7 v8 f* J
ActionGroupDemo(Zone aZone) {* N2 Y) m$ c1 P, L2 i8 ]4 |
super(aZone);
: X! h4 C3 P; b. P' Z7 N v2 W2 W( y list = new ListImpl(aZone);1 J; A- s$ J" A
swarmSetp();" m' ?8 s, v5 G* v* B+ |
actionGroup = new ActionGroupImpl(aZone);
" Q0 a: q+ y4 x1 N5 ~" | schedule = new ScheduleImpl(aZone);
4 X2 ?9 W/ r- e try {
7 \- y+ w1 v) a9 s! y! m Selector agentSel = new Selector(Agent.class, "agentStep", false);5 f9 }7 u, ]8 u; F* N8 D e1 f/ k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. V1 j2 ]" X+ Y
8 e& l" G! [% A9 } actionGroup.createActionForEach$message(list, agentSel);" m/ m; O/ M: d- u4 x# C
actionGroup.createActionTo$message(this, swarmSel);
" B3 Z' {; ~0 _ schedule.at$createAction(0, actionGroup);
! h* a1 U/ S/ M schedule.at$createAction(1, actionGroup);
* ]/ s7 _4 B: ?" | schedule.at$createAction(2, actionGroup);
0 h* p; s; d4 x2 x7 Q6 d0 t! `5 T1 c G1 {
} catch (Exception e) {) G/ Y( D8 ?6 F3 |% g
e.printStackTrace(System.err);9 I1 p. i7 D) ]; h9 X% D
//System.out.println(e);
6 K! m$ v) b& W8 {( b System.exit(1);4 ~0 X' w1 L/ Q5 W
}
/ O$ j8 j: n4 P; M( r% S8 {/ {. `
; Q5 C& R) K0 z4 Z* [& y& h1 @ ?8 Y" N& M1 P; s' x
}
" `4 J4 ? o$ X) j
! O5 M$ y+ c& w" o2 q1 t private void swarmSetp() {, `' D5 I L! C5 S+ w( G# B
list.addLast(new Agent(Id));
$ n6 X) O1 n- c/ G Id++;
- T9 R! L! M* c, L. l8 M }
& Y, B- r. R8 d7 O. I3 @/ J u
- N' r7 F! u! g, s public Activity activateIn(Swarm context) {1 l1 @; L' r" M0 g K- q9 P
super.activateIn(context);
% v L! V q) y. Z6 r- A schedule.activateIn(this);5 [$ u" e9 q5 a: F
return getActivity();/ ~# r+ b! z D5 t2 X, ?4 ~
}4 k5 V5 _" H+ y8 m' T
4 N9 Q4 {3 s, E/ Q public static void main(String[] args) {* B; g& [9 F' ^4 r" w
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% ^' h4 F" t0 B0 r' K) D Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; H7 N( }* b) |$ f% G
swarms.buildObjects();) L4 ]& n+ s' {, m; T8 {. r
swarms.buildActions();
) }) {" b- G2 U* k swarms.activateIn(null).run();
2 q0 B( H7 ^2 Z! b- R- g }
* ~, q ]; V1 ?+ Q& M6 c
) s% c d! s, }} |
|