|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : d+ u, d% [! O! |8 d6 `
8 _1 }4 M$ a9 |6 J u. W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& ]4 q/ F' T1 x9 D/ b% @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 [' {! f9 z. Tswarm.SignatureNotFoundException
6 n& v' w: X' t+ \ at swarm.Selector.<init>(Selector.java:76)
6 G& R2 G2 q) ?4 Q6 H1 N at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: y( ?* C' n; [ at ActionGroupDemo.main(ActionGroupDemo.java:67)0 N3 I% ]0 U* A% O- b" v8 k9 n8 t
0 Z# {2 ^5 g8 O& {
6 S$ A8 \* q! z# O2 W6 w( F$ ]& Himport swarm.objectbase.SwarmImpl;
A2 u$ ?2 Z1 ^( o% simport swarm.objectbase.Swarm;% y3 U% q5 c( i% H
import swarm.activity.ScheduleImpl;% g# F7 l& Q/ {) ~: h! ~: O7 v8 Z$ p. r' T* Z
import swarm.activity.Activity;
( i7 b6 T3 T6 Z7 M! }import swarm.activity.ActionGroupImpl;
! H* W( M3 ?# q4 N* J5 d) zimport swarm.collections.ListImpl;5 b" t1 s$ q) Q3 O
import swarm.defobj.Zone; ) s& i5 h: u% Y0 n. P: y" d
import swarm.Globals;$ L9 M/ r% }5 j6 h1 \
import swarm.Selector;, P, d% E% u4 p
import swarm.activity.ActionGroup; , M" n& b2 h. l8 U8 P# q9 o: d: l
class Agent {! P. v& L2 {/ |6 T" V6 e
char id;+ u9 }( |* a: r5 d. ?. O( D3 Q2 |
- T; N3 N6 Z9 p. D# h Agent(char id) {
. Q" T0 w9 G1 ^( G. }- O$ B) { this.id = id;$ N5 b7 f7 e4 n; @( P; o; r+ q+ x
}
5 X, G4 Q L5 S7 W7 Q$ i0 V. j* ~ j5 |
) F2 `' i; E9 I1 K public void agentStep() {( W- w( }7 U4 G7 `% Z
System.out.println(id + ":" + Globals.env.getCurrentTime());
, e, r2 q! N9 ^# e; A/ D4 A }
2 G+ ^. \3 Y& Q$ }4 q: U$ F}
4 N/ }! H0 r1 X9 U1 e
# e9 v6 t' v4 Mpublic class ActionGroupDemo extends SwarmImpl {
4 d/ W4 j+ t2 S* }+ O; N ScheduleImpl schedule;
1 w0 b0 d' ]; _" _- a ActionGroupImpl actionGroup;
3 \+ r! R8 c0 X; z/ W$ E) n7 d/ w ListImpl list;
! v4 M) N# G% M2 p char Id = 'a';
/ ~) y3 J/ S0 z( i( s, j
) n3 d# F5 ~9 l4 O ActionGroupDemo(Zone aZone) {
3 c2 b, I8 m) z5 \0 [ super(aZone);: x- S, u7 q, y% Q4 b
list = new ListImpl(aZone);
3 X6 ~, W0 ?# ]9 `/ x* k5 \ swarmSetp();
& l' \8 q+ y4 W" q4 T% ^* V8 M actionGroup = new ActionGroupImpl(aZone);% g4 q; |0 G5 Q4 {; V0 `
schedule = new ScheduleImpl(aZone);
3 d1 c. }6 T) z" T2 ? try {
6 V" U3 D& L9 y1 V" j ^' p1 _! L Selector agentSel = new Selector(Agent.class, "agentStep", false);0 J* R4 N- k3 F# N. `5 D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. a- P. q6 T. L, a/ E1 p" v- }) i; U7 P
4 H; _9 _8 y0 o2 C actionGroup.createActionForEach$message(list, agentSel);6 M; p" j$ F% E( @/ Z
actionGroup.createActionTo$message(this, swarmSel);: z" x3 t7 b; G/ f( d' Q
schedule.at$createAction(0, actionGroup);* l9 @+ m ]' M5 u2 s
schedule.at$createAction(1, actionGroup);
4 ?/ i, A6 S# z( Z% Z schedule.at$createAction(2, actionGroup);
1 M+ h# P' Y4 T( a% v. W' U
- ^: q; x+ k2 G* Z } catch (Exception e) {. \% n" a1 ?7 m4 Q
e.printStackTrace(System.err);3 R9 h. P3 v: S8 j$ ?3 h( l
//System.out.println(e);6 C' O1 j$ g# X+ Q
System.exit(1);
) F, I. C2 x' @5 t u, H }$ T' O" a9 K3 y8 M; Q
" m: n* A* |6 X& P }& j* e. f3 m
* q! |4 d9 k7 Y6 a0 _) R' y
}/ ]8 n' t" R- B$ y( E2 L0 I
3 s7 C0 [( w U private void swarmSetp() { k: D: b4 n: y& L. `8 U% Q
list.addLast(new Agent(Id));
& X0 C% e# _" X b9 E& W& y Id++;
# O0 O" ]7 g( e' m0 D0 ^; t& o }
6 e' {) E& l6 g( n
! }' k5 T# w F& e) l' k# X* g public Activity activateIn(Swarm context) {; I3 j3 Y+ a5 T# J
super.activateIn(context);& B. ~2 ^( F! f* v
schedule.activateIn(this);2 u w: _1 R- a, p' t# M6 ?/ p
return getActivity();9 z1 ` s0 t; f6 F4 @
}: O& r) n/ m# ?6 m5 C
$ s0 m* D( e0 z8 N2 Z Y) @ public static void main(String[] args) {' |. g( o, e6 f% w5 `8 H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! x2 W. c2 g9 z3 a. K
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 o& z) `" s6 b9 @& q" f swarms.buildObjects();
/ ~# _: _ {1 ?) C7 b swarms.buildActions();
( B9 W0 Z- B" K |$ S' n9 ?. K swarms.activateIn(null).run();
0 ^0 k; \6 z, W0 t" ] }9 O# Z7 \3 [( _. Y2 z7 I
3 _$ g6 v5 ^+ j: S! p8 f+ R} |
|