|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " I$ C& _. a. e. l
2 @, |6 [6 H/ x% Z% t7 u( v( S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, V1 _7 h( E: a. Q- n, ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 x+ E0 K( t1 ^swarm.SignatureNotFoundException
. l( ^8 m7 P' f& d at swarm.Selector.<init>(Selector.java:76)
, d- K) I {$ }- { at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) L& _7 V4 Y/ C; v' c$ U1 g at ActionGroupDemo.main(ActionGroupDemo.java:67)# E4 M; {9 V3 w7 U
6 S8 }* m# d; |) ~, l. F( \" `5 ?) \' w1 W* I
import swarm.objectbase.SwarmImpl;
! w9 C, m. G. C/ G6 R0 Yimport swarm.objectbase.Swarm;9 s4 Q9 A3 @+ }5 j/ F4 P3 h
import swarm.activity.ScheduleImpl;
1 k" x1 k! |9 j o+ Oimport swarm.activity.Activity;
5 M- A6 t+ v) Y& d+ Fimport swarm.activity.ActionGroupImpl;! A* F& O* G! t2 p) y5 o1 ~ A6 g
import swarm.collections.ListImpl;
+ u9 A* y1 |- ~- J; c; Limport swarm.defobj.Zone;
$ ~% l/ V2 K& vimport swarm.Globals;
8 W% M0 d( z3 k# V1 W8 t1 Y; x+ T( [' ^import swarm.Selector;5 z$ n3 t" U' I
import swarm.activity.ActionGroup; 4 e. `/ S8 K) _5 ]- D9 r
class Agent {
' F+ p) o& t9 V: j8 y+ q char id;
% q* Q# |* F1 Y" t
; ]# O0 I, H) i' U ~! R% Z* H$ j Agent(char id) {/ G5 x: n% l/ y5 r& V# u5 h' X# y
this.id = id;
9 I( ?3 M3 e& @, y) X }
0 a$ \2 Q |1 F; V% j4 K; p3 o: p0 Q; e5 H5 _ h
public void agentStep() {. |8 u8 v5 M, U+ W2 z9 x0 A
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ q; {9 W! M! t( K' N }) c% ?( q% y* {
}
a' r) o3 V) C: M5 \9 t! h4 D* A3 A, I. T+ F$ W' U1 X8 L" `
public class ActionGroupDemo extends SwarmImpl {; G' r& i7 ~0 g
ScheduleImpl schedule;& t0 |3 ]+ [4 _( [
ActionGroupImpl actionGroup;/ Z+ x1 d* W: D) a. ]
ListImpl list;
( H+ b2 I# Q; Q2 v5 u char Id = 'a';
" o* r! a7 @# V" t. o |6 Z
3 P# ?" O! Z& ?) _ ActionGroupDemo(Zone aZone) {
6 d3 H1 k; D" H: o; _3 ` super(aZone);
7 E5 X) h c, S* L3 y list = new ListImpl(aZone);6 U" f" z, O6 d" [$ z$ E& Q" v
swarmSetp();
$ T$ {3 i4 K% D1 Z2 V- k/ _( P actionGroup = new ActionGroupImpl(aZone);
$ j0 O6 h5 u! K: Z T) y8 ] _9 q schedule = new ScheduleImpl(aZone);9 g) E! t" }0 `6 P( w# C
try { N# y$ k# ^0 n3 z4 C- J
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 g6 c: N+ Y2 L4 S: ^: ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
K2 z; b: X& r3 ^( R
. S; z/ ^9 J c" l7 l% u actionGroup.createActionForEach$message(list, agentSel);0 b1 u0 a l" h8 H* q- G& `+ y: ~
actionGroup.createActionTo$message(this, swarmSel);8 b" y% ^& K/ ?* }
schedule.at$createAction(0, actionGroup);
/ X$ Q8 V8 d4 [7 j r, T- y" h schedule.at$createAction(1, actionGroup);
8 t& i! Z- \4 n9 r8 L schedule.at$createAction(2, actionGroup);% H$ m7 h& M+ q" ~
8 K6 k( M& @* q/ b( l* v
} catch (Exception e) {
0 \, m3 t& l7 k) H9 L6 e e.printStackTrace(System.err);
+ J5 ?* F' J. Q4 a //System.out.println(e);
: L) R0 k0 V9 y) G& Z0 S1 }* E/ ? System.exit(1);0 u. G- c) \5 y0 I# i
}# u- N- r% T5 o- a# `; r( Z
5 E4 ?! f) ~! G I! X; |1 Y- m& _0 }$ `0 R# @! l/ X
}& M- v) p( q, t, ~) V+ Q9 X
7 F0 R, x0 ~% U: ?( s' l2 J private void swarmSetp() {
" v% y: | R2 J list.addLast(new Agent(Id));
/ D( u, @8 g) I3 ~5 `: R5 H Id++;7 F; z! @5 U1 Y7 L7 w$ Z
}
- f# Y$ Y* N: W) v. e" R/ A$ C7 i. B Z3 g1 t
public Activity activateIn(Swarm context) {
3 f; r9 O6 E7 }$ y super.activateIn(context);6 q# K4 R8 O9 R8 j: j
schedule.activateIn(this);+ j3 {. \$ {2 b! j8 P0 T" V
return getActivity();& \1 f& F7 a. w3 M; A
}4 F9 c( @1 R# O2 e% c! g
* b! M S4 s* |) q public static void main(String[] args) {- Q( u9 [( w! G7 I% i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ K) A% e+ ^& k( B" D Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 [+ ?- f: G* {
swarms.buildObjects();, M( ]) l9 {0 u. u0 n' [+ [( d( Q
swarms.buildActions();
) Q& D2 d" `. l( } }! g+ C swarms.activateIn(null).run();
- r+ R9 _# Y3 U; d }
' i$ W6 n L* f- C1 a. }1 g8 m& M" n5 n6 D" E! X- ?! a
} |
|