|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( [0 e4 j" }- `& N
. H$ j, \. S W& ]! i8 A* h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 L' P* s) w- K) O, |9 b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; w, }6 k L( }7 ]
swarm.SignatureNotFoundException
: n6 o. X& q6 g: m at swarm.Selector.<init>(Selector.java:76)( L& x- l7 F& A8 ], A Z, P5 i: K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) J! r- Z- F/ L/ t at ActionGroupDemo.main(ActionGroupDemo.java:67). i% o# m) K# u) o! u. z9 a
5 H3 u0 D: L) l! v
" Y3 p9 Z. H# B4 E) @5 `+ i
import swarm.objectbase.SwarmImpl;. X; }8 \9 B' R; d4 I
import swarm.objectbase.Swarm;
/ h! h0 X. J( q0 y) Dimport swarm.activity.ScheduleImpl;
3 E# n7 [* A5 k+ t: s, iimport swarm.activity.Activity;! M; Y3 G c5 ^, u
import swarm.activity.ActionGroupImpl;
( [- U/ y! o! l% q8 w, r, E! ?import swarm.collections.ListImpl;' `) h) Y* F' [4 Y. T7 I
import swarm.defobj.Zone; - r, a* I0 A% [ i# n0 H
import swarm.Globals;( y$ K& @+ l* w$ r+ b
import swarm.Selector;. d, e) k) l: {$ t( E3 A" @
import swarm.activity.ActionGroup;
- M9 c* ]5 A1 M1 y* `class Agent {, ]! b; d, Q) z
char id;
9 u- r3 ^: b, l( m! _0 l7 {0 Q, d1 { S" R U4 R6 n9 O! l
Agent(char id) {) d2 o# v7 v0 J& Y: b& y5 t' w$ ^
this.id = id;2 f' e$ \- o: k; r e
}# m6 I5 _& a3 ~
. [& H; M" l9 E# t
public void agentStep() {: h+ Y. Q3 u# T' B$ p& H6 z; E1 R
System.out.println(id + ":" + Globals.env.getCurrentTime());& k( g# ^# P& J! M. ?! u
}
: D9 @6 H4 [& r# T: {7 L}, G6 M2 s) K: d' ]- V( W- P
% Y! z/ D# @. h i+ U7 V: W
public class ActionGroupDemo extends SwarmImpl {$ d! t( m3 }- }, Q: E/ R
ScheduleImpl schedule;
) b% B1 v! X; W( E) o, Y( I; q8 x; T ActionGroupImpl actionGroup;8 O: v2 B) Y( R
ListImpl list;1 O3 [( W, e$ i" J. q; [' P
char Id = 'a';
/ m. t# }2 `9 L+ P' Z$ ]3 B4 E3 N0 q# Q1 [1 [1 r( Y1 Z# u6 |
ActionGroupDemo(Zone aZone) {4 u. R" ?. @1 _6 f! W6 s7 Z. Y
super(aZone);4 _! e: k) h( f5 D$ r
list = new ListImpl(aZone);
4 H+ `0 R1 o! v( Y. @1 Q9 s. [: r swarmSetp();
9 X2 Y- b* U# B& W5 X$ O. ` actionGroup = new ActionGroupImpl(aZone);, R& ^2 C1 F$ W4 \' K" q
schedule = new ScheduleImpl(aZone);
" }+ q5 r4 s1 I/ k# ^ d1 X/ G, O try {/ d0 V$ Y" ]: {* M2 p. S) l0 f6 i
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& r h. R9 T6 B7 Y" [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* c% d: q+ c( T( q9 `
' ?3 j8 X3 Q9 O' A' A+ m actionGroup.createActionForEach$message(list, agentSel);
( f/ `# L; w! h& ` actionGroup.createActionTo$message(this, swarmSel);
6 |+ x9 r* i- L0 @ j; |/ O schedule.at$createAction(0, actionGroup);2 k4 _5 q; ]! h; f! E1 \) F
schedule.at$createAction(1, actionGroup);4 l. `" M# Q- p; N3 j
schedule.at$createAction(2, actionGroup);! v9 n) [2 g S/ v7 Z4 \- H
8 Z2 b( K' r+ V1 b; j/ H
} catch (Exception e) {
6 E3 U' `: C! |0 T e.printStackTrace(System.err);" z( v, q5 Q! H7 @
//System.out.println(e);
6 _% |' z( i4 F9 q' N- v; C A2 I System.exit(1);
7 A8 i( v3 n+ { }
* L9 N$ Q8 x* `" Z/ }+ V1 T1 A+ \ G4 h% ^) ]; w* p
1 H; e% }1 a1 \
}
+ `# H; N/ T, b" v2 u' l6 `5 a) @% r. d% o% |, l ?) |6 y
private void swarmSetp() {' o9 D) y. ^- O. F/ L
list.addLast(new Agent(Id));
/ J4 p! b' c0 Y1 r# i8 D& u+ ? Id++;
7 L. ?% L2 x t; v }
" g6 D B) D4 Z0 g& [! K V- g6 h
% l V* S; W: t( p* }/ y public Activity activateIn(Swarm context) {
& }2 d& r0 F8 X; q super.activateIn(context);
- S; X) P3 p0 q- d% f8 S schedule.activateIn(this);
- h: s. E' @$ \0 c8 [ return getActivity();( ]/ a. j0 M# Q! n+ \
}5 b z* q% z& e
$ e3 l& U& t' R8 G) N. M public static void main(String[] args) {0 ]4 n9 F6 H2 K' m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 M3 K3 q* l7 Y6 V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 @, k9 u" e! ~( d- q& l swarms.buildObjects();+ P$ K$ N2 H3 `8 P2 Y' [
swarms.buildActions();4 b5 |9 N, k6 m3 H
swarms.activateIn(null).run();9 A+ _% S- ?7 t7 e8 u
}! T2 s) @8 ~( s& [% w% P( [/ Y1 ?
# {8 r7 w) n4 A- e8 D8 A} |
|