|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ }- _3 s" k+ A9 {! K+ i; q' V: n- h" N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 \- h' U3 B$ V. Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 y' v0 K3 N. |
swarm.SignatureNotFoundException
* Q4 g& c% [! v' X$ O4 |+ Z at swarm.Selector.<init>(Selector.java:76)5 L. q2 s3 I2 s3 z" i0 b j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) J4 c' m1 o8 f at ActionGroupDemo.main(ActionGroupDemo.java:67)2 g- o: {( ~7 o( G3 c
. f2 j- `" ]1 ^/ I. {. k7 _8 J4 D9 y8 W
import swarm.objectbase.SwarmImpl;/ B& g& X! u$ Z9 e$ d! F
import swarm.objectbase.Swarm;
! Y% g, M5 p7 ^! I; Eimport swarm.activity.ScheduleImpl;
' P! l6 m: A! t5 U, L/ {import swarm.activity.Activity;
( _" g7 j( F3 r/ P# v! Bimport swarm.activity.ActionGroupImpl;
$ ~8 | n# [5 t b% V5 Kimport swarm.collections.ListImpl;
* l" ~" W% I+ \# Yimport swarm.defobj.Zone; " l' ~- O1 `$ g! D( }" n% O
import swarm.Globals;
0 k* ?, R: t' V) D9 Z) H% Dimport swarm.Selector;
0 O" O# D4 G/ l" _; Vimport swarm.activity.ActionGroup; $ n# k- \% s6 T
class Agent {' e# t& m# R/ L+ N0 Z
char id;- ?5 S2 }4 |3 g( R% T" q
4 Y3 O8 P# x6 k# Y4 j* _& n Agent(char id) {, _& }, }5 ` x/ D5 e3 u+ v
this.id = id;
# v$ N" M& q/ c! p D, X }. n3 T1 k* I0 K4 e
Y5 M1 g; M+ T) g public void agentStep() {$ z- Z$ q1 q. ^9 [
System.out.println(id + ":" + Globals.env.getCurrentTime());5 ?9 I5 S! i! k/ M
}4 Y- {- ~1 [* i9 y
}+ ^5 |! L% C+ F/ }% V
8 N# ` D9 P6 Q2 E* q0 `' d5 Y! R
public class ActionGroupDemo extends SwarmImpl {
6 }6 ?7 X, Y! I4 m) t ScheduleImpl schedule;
; z7 W) b5 i1 F- s: l$ \" p ActionGroupImpl actionGroup;
( w0 y+ u6 j* B6 g1 S. R ListImpl list;
F: R0 W j- x& ]$ c+ `/ t char Id = 'a';
1 c- {2 ^8 o" {' O, d2 `7 t3 w/ |2 K" z# i
ActionGroupDemo(Zone aZone) {' ~7 G4 l9 K4 G) ^$ |- I) x( A
super(aZone);) S/ T& j; g+ n! {$ d
list = new ListImpl(aZone);
$ {# }% r$ Q: v swarmSetp();2 N: {& A9 F. u) l" V5 Y
actionGroup = new ActionGroupImpl(aZone);- h# C6 U# f! ^( h2 d
schedule = new ScheduleImpl(aZone);
& d5 u6 k5 i' v5 D' k try {
$ {. X9 H, y; z& b' h( b; \ Selector agentSel = new Selector(Agent.class, "agentStep", false);. l4 h+ ]( H/ L2 N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 g7 O6 r4 q: a& H. M
/ X' Q4 e& M. t" l- D actionGroup.createActionForEach$message(list, agentSel);
/ [3 |% b0 n" h. l" F* x& k- F2 R actionGroup.createActionTo$message(this, swarmSel); [' b5 B- @3 A) u. s
schedule.at$createAction(0, actionGroup);* y5 S( @8 M e; R7 _
schedule.at$createAction(1, actionGroup);; p6 ^( }9 H& e/ ?, E
schedule.at$createAction(2, actionGroup);
( O3 w6 j* F( @- Z7 w# w
U+ m* r" H% n2 @ } catch (Exception e) {
" K3 M7 V+ O5 s; V- Y e.printStackTrace(System.err);: U: B8 z7 ]; A7 [8 X
//System.out.println(e);, {* S" S" K2 s" _2 C
System.exit(1);
; z' I# O, ^: t; P }4 _9 e1 F% u4 R7 n {" U
" ]+ r) x+ z1 j# p) E
9 o" o; l- E- z5 D9 ?8 Y$ _ }9 o/ n* S5 e+ l
9 {) T0 \& @: ]0 k" w% a/ L9 p private void swarmSetp() {
, O1 h/ A6 A7 j# B5 A list.addLast(new Agent(Id));
' i# L1 {1 u( ~0 e2 g Id++;
) [, b5 C# ]; n- k1 c# w( H }+ Z6 b2 t. c4 T$ O1 j$ s# z" Y
5 M G! o9 ?& W) z; A public Activity activateIn(Swarm context) {
! G9 K! |' I. d7 Y: A% k) a super.activateIn(context);
3 R" ]4 h& L- K- ] {6 w- U schedule.activateIn(this);; `) S! K' G# \ t
return getActivity();
+ a& a/ e3 d3 z }
W4 @$ j( A- z9 W
8 h4 Z) }7 f2 k6 n public static void main(String[] args) {1 D# b! m! k4 f) v' q T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; p3 j/ v- B# e7 [: }/ @4 I" P
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ C* s4 n9 c" S/ t# o) h swarms.buildObjects();/ W, p0 H7 I, Y3 ], d, e
swarms.buildActions();0 a1 t$ s3 O0 M+ i% p1 s: z# l
swarms.activateIn(null).run();
# B6 K/ ]' H" k% p) G& ~ }
5 U. q2 t1 P |- q; t
m1 P# @1 Y! S* O! L) g} |
|