|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 z' H$ Z8 ]# F5 m. _ \% V8 o9 j
" j V! W' `' w- @' a1 H* c+ W$ B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& G/ i$ i3 Z2 o* J; b$ H- z* ]5 x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* b9 E1 V' N% P8 M0 w# @5 [# Fswarm.SignatureNotFoundException) J1 z# y4 p/ E
at swarm.Selector.<init>(Selector.java:76)* R, A, D# T: E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
{" Q0 A; e! v: p5 }, H at ActionGroupDemo.main(ActionGroupDemo.java:67)1 @+ Z1 u& F) t' W
2 X8 D) V5 y1 s! x- }* D$ P4 d0 Q' o) d' t% ^' p7 E
import swarm.objectbase.SwarmImpl;% O7 k/ @4 R2 E8 i% y$ ?( P3 w
import swarm.objectbase.Swarm;
- a- r3 g6 l4 s5 W7 F' [import swarm.activity.ScheduleImpl;6 h* x- L2 G1 u! L4 W: T
import swarm.activity.Activity;) h8 c+ `3 k* E `) B1 S* u
import swarm.activity.ActionGroupImpl;7 f( N% O; @/ B9 y$ d
import swarm.collections.ListImpl;
4 U: i$ a' |+ D: K( t8 ^; U4 M, M+ Vimport swarm.defobj.Zone;
. g. B5 N; i, z5 L+ qimport swarm.Globals;# U) f* K' i( m- C* s
import swarm.Selector;* K7 h. s! U6 E D/ }
import swarm.activity.ActionGroup; # Y. v P& a2 v3 C
class Agent {
1 R3 {( ?" J6 a5 y1 q4 w9 x char id;
9 y0 t) L9 d( V: r$ a' C
* _1 J4 l" G3 Y* p Agent(char id) {
$ E8 A, ?# G: A5 v" A this.id = id;# t# K' p% o2 n
}# ?9 v2 R2 K6 C5 E* z' U E* g
8 S+ D& n- L* Y5 V
public void agentStep() {
. d- S$ I5 K) h7 S( [& @- X+ k System.out.println(id + ":" + Globals.env.getCurrentTime());
4 @; Z+ e0 S9 i! M }
2 w C. t0 W$ W( [4 y( J}% q- r, j( K6 x. j
' \5 S8 Z& d5 x3 Z% b3 ?
public class ActionGroupDemo extends SwarmImpl {
2 ^2 b. d( m8 D/ N+ q T( k; [ ScheduleImpl schedule;: ^1 W! ~% Q" L/ ?* e
ActionGroupImpl actionGroup;: F' b4 T: Z6 }7 L) _0 H, m: m
ListImpl list;# ^0 d8 o" e/ ~& H( a/ @
char Id = 'a';
H0 g# K4 G' [+ w1 B y: ]- i, T! ^# W" b
ActionGroupDemo(Zone aZone) {
1 Z+ e, G. V- D5 U* i4 Q super(aZone);
5 b$ L! Q# v, T8 H, v0 l list = new ListImpl(aZone);
3 r1 L' w [9 j0 j; j( }, w, ` swarmSetp();
C$ X6 I8 @4 j+ n r4 r/ u, j actionGroup = new ActionGroupImpl(aZone);' n @, `5 ~0 N2 ]! P( r
schedule = new ScheduleImpl(aZone);
/ c% r8 J2 S0 [4 P try {
3 v. f5 U! `# w: f+ p Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 H( X Q( n/ n* h$ L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 L: S/ X7 ]$ ]# ~! a- Y ! Q, |. h, M+ ?( F
actionGroup.createActionForEach$message(list, agentSel);
/ N- e0 S4 X( [. V9 _( h; l+ Q Y actionGroup.createActionTo$message(this, swarmSel);
& p" }8 x# s! R$ K schedule.at$createAction(0, actionGroup);/ u+ p4 L: R4 L) l- _1 U
schedule.at$createAction(1, actionGroup); h- U6 l2 G" V |3 q6 a# Z
schedule.at$createAction(2, actionGroup); F" ^( n, l, B( v# c/ k0 n) R; W9 d
r+ `' D R& q8 S R. x! ` } catch (Exception e) {! x! B7 Y8 y7 Q! ?& A F; f
e.printStackTrace(System.err);+ W3 L' q+ d& A! @: y
//System.out.println(e);; b( [% E( n, x9 V$ o3 H4 P: x
System.exit(1);' O. L2 c: w$ s5 D1 E
}
9 t& i7 t/ z8 P) ?( J0 B0 x" K) p7 m
" l% r, s; B/ i } q% [: f, I0 y# F
5 @9 B8 c2 e& I$ \
private void swarmSetp() {7 N$ A O, z- _5 _
list.addLast(new Agent(Id));
$ p' ~6 c) I; Y7 F Id++;
+ d, Q) L7 Y$ _; b }" A0 p/ _/ u6 n$ c0 f# c) ?
8 y" P3 v! i1 ?' Q1 o$ j
public Activity activateIn(Swarm context) {
6 K* }3 U' s; M( B) k: i super.activateIn(context);- s) Q% }9 l+ }+ o3 H
schedule.activateIn(this);
' Z. Z. W* k" D1 r' \6 o return getActivity();
3 l% \9 H6 R+ I9 z9 b6 v" o! F }# @% Q4 J% B4 ~ G9 _
' K) F- G/ S! d public static void main(String[] args) {
8 x1 i' f; ]0 W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& v- N& U0 K; c7 h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- Z* y3 m) E5 C |3 z, s) I* Y# ]2 N
swarms.buildObjects();6 s0 y$ Q. A2 A; } M" J
swarms.buildActions();
3 V+ n, T8 o: x6 @9 V0 \ swarms.activateIn(null).run();9 _6 K9 S6 j, R) z" K9 T
}/ L6 t4 w/ F c& Y4 l( ^
0 h7 r: e! N- {/ z! L( t} |
|