|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% p# Q7 j% l: J9 B! z/ h1 `- W+ a( J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 M: s- f, ~1 Q, b. z3 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' g ~, j* k& ?$ J" d1 y) z
swarm.SignatureNotFoundException3 }- n9 S" J. o# k$ k) s
at swarm.Selector.<init>(Selector.java:76)
. c/ J( s8 a- q: T. c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 e+ S8 s! C+ G% E( w5 a, t
at ActionGroupDemo.main(ActionGroupDemo.java:67); f! A; U8 S% S. J
1 x( n, F+ \' Z. |& w
8 t4 M6 Y% q2 ]: d) d7 t' S$ gimport swarm.objectbase.SwarmImpl;; d. [' p. Z+ d5 Q2 l; O
import swarm.objectbase.Swarm;
+ n& V0 g" }) T2 J0 U! ]( Qimport swarm.activity.ScheduleImpl;8 ?* e% Z1 L/ D$ W5 f
import swarm.activity.Activity;1 Y4 }# T3 m# ]/ i: Y+ Y
import swarm.activity.ActionGroupImpl;9 k1 n" |5 v# X
import swarm.collections.ListImpl;6 n' _1 b" o/ h% O4 [- A
import swarm.defobj.Zone;
" O. c4 z% o: p8 ?3 u0 Nimport swarm.Globals;
+ U+ |# v2 x% g: N% }) o4 F. Ximport swarm.Selector;
9 t* _3 ]9 |3 m! |5 D" Gimport swarm.activity.ActionGroup; 7 W" d' [/ v% i3 y7 r3 L& y6 A, i1 R
class Agent {
4 S# Q% U: d, S5 h9 J2 N char id;
8 T1 u6 ~. {% n4 O, C K
* U1 {3 {# R) }8 T Agent(char id) {
& O" D, n- F" o. z3 ?1 |2 P this.id = id;
$ T0 q1 e) g% }+ D8 f% w, M4 e3 I }
- e5 s9 `) g* V" `5 s
) w! N/ ~ X1 E public void agentStep() {$ L. n! a# }+ ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 ? f5 m; h6 W3 E- G% q }
3 Q! |: F' r: W* ~3 ?) y}+ H( b& X& ?& G5 X2 Y# ]; Y" [. z
! M5 _& z) _8 r4 R: P/ v
public class ActionGroupDemo extends SwarmImpl {' }+ @" a/ U+ j \" ]: o$ z3 C
ScheduleImpl schedule;! T% {8 @; G9 v5 l
ActionGroupImpl actionGroup;9 M: v* E7 S5 f- A' a
ListImpl list;
$ K; A1 ?- Q. A) A9 Y$ x char Id = 'a';; l$ h: f+ _3 [1 w' d
# j6 A* ]3 K, A
ActionGroupDemo(Zone aZone) {9 A: H3 R0 d) g5 S" T7 o! X
super(aZone);
: }$ l' A8 o; o list = new ListImpl(aZone);9 @! t; X3 |" {8 ^( @# L
swarmSetp();+ D- y* W0 }8 k. x0 ]9 c7 Z
actionGroup = new ActionGroupImpl(aZone);7 M& E$ p1 c, E; v1 s6 D
schedule = new ScheduleImpl(aZone);5 x. V: S0 Y1 Y+ Q% _
try {
T" R: \+ T" G! j) ? Selector agentSel = new Selector(Agent.class, "agentStep", false); e. o. R2 v, z" o# U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" D# _. n3 K6 M* ]0 S
1 Z( D# u% w5 x" i actionGroup.createActionForEach$message(list, agentSel);9 N& \) H3 L' Q
actionGroup.createActionTo$message(this, swarmSel);& V3 W6 h3 b4 j w2 W: J0 e" m8 ]
schedule.at$createAction(0, actionGroup);! S3 q) A, G ?: ]
schedule.at$createAction(1, actionGroup);: c3 K7 h+ ?" P3 l
schedule.at$createAction(2, actionGroup);
+ s4 z7 x% {( c: |4 R* F5 ]( S# B8 @/ j
} catch (Exception e) {
) e( [; [! o6 \ e.printStackTrace(System.err);
1 B4 t6 X/ S1 P3 m5 G, |3 u //System.out.println(e);6 T" Y6 Z$ D# `. B$ _4 `* \
System.exit(1);
: }. e, A' l) y8 Z3 w( q }
1 |0 B) O* J' r' C6 S, U
) ?* f" w! d* r% c' G$ u2 g8 L+ f" x
}. T9 i$ S9 O: t/ L9 m: a
/ i6 O/ E6 G# b
private void swarmSetp() {0 u2 ?: T' z; \
list.addLast(new Agent(Id));. s9 R& L8 }% Y+ `3 L
Id++;6 j5 F6 z! Z- X3 D4 y9 K
}2 a3 A0 C' e$ L! Z- C4 _4 W0 M/ Q5 @' S- b
/ {6 g! Y3 o7 w, t+ w% W. g" _% [
public Activity activateIn(Swarm context) {" L% c' w. W! I& [' o$ e
super.activateIn(context);
) h# _, Q) o+ Z' C9 M* @; }/ j schedule.activateIn(this);
- e6 |% Y7 c! ?0 Q4 U7 h& k) K return getActivity();+ R2 ]1 C9 F0 \/ y; W
}0 r, S, D% P: P" \$ i4 c8 ]' r
- r% r1 }& a% T1 h9 O public static void main(String[] args) {
, B% R# ^1 D/ o4 Z' B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) f" H1 {9 |' ?* d) \" }+ n: C! N3 [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 m( h& ~& V" G, s$ O
swarms.buildObjects();
7 v# S" ^ B" s! t' z0 T4 k swarms.buildActions();" Z+ {; y$ b( d; L7 h9 I
swarms.activateIn(null).run();
4 }. }7 B6 G! v9 z$ o }
: c% b+ d [* B, M7 q6 ~* e9 k1 Z" D( X$ M
} |
|