|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
X1 P9 t% I( e9 ?9 S; q- R# ^( o$ \$ [' o% h0 d& ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# f# K5 h6 t/ i' B3 s$ d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' c2 P+ O6 O7 i4 S* M
swarm.SignatureNotFoundException
* d% S3 u: q$ x7 ~/ w; m at swarm.Selector.<init>(Selector.java:76)+ I8 G3 e2 a7 T9 O! N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 H b# ~/ m5 b7 K: M at ActionGroupDemo.main(ActionGroupDemo.java:67)& s% ?5 v6 J( A3 t0 G
) T7 C! ~3 K0 M2 B1 o
# A( `/ ^+ ?1 d- W* D* `
import swarm.objectbase.SwarmImpl; a& m* Y2 n$ C/ p
import swarm.objectbase.Swarm;
" E1 F X3 {% M Z7 r6 |. Dimport swarm.activity.ScheduleImpl;
8 J+ T5 i L8 J+ V. Q: q1 O' simport swarm.activity.Activity;
; c4 O3 }& j" Q, Vimport swarm.activity.ActionGroupImpl;
/ o) R( K, c7 rimport swarm.collections.ListImpl;
3 T1 C6 q6 ]9 Y+ i6 f6 y7 Oimport swarm.defobj.Zone; ' V' G) t9 @( Q8 O0 k; m3 a1 k7 Q' C
import swarm.Globals;) a7 `4 I8 ^& d0 i) U
import swarm.Selector;* d, @# O9 x: M
import swarm.activity.ActionGroup; 0 s" H- n! T, y4 X9 E( S0 A
class Agent {, w+ T y! B f' p$ x& q
char id;
) a9 w; d- B, ] q7 U; F: g* ?- H) x1 q" _! s( {& a
Agent(char id) {
3 k' `, N: K1 Z- I) u' Q3 R this.id = id;7 Z+ k2 T( b R. U
}9 V+ s! J, C( K Z
) f4 U" f7 g; r/ F5 a" d2 G$ w public void agentStep() { J1 r4 [$ l- I
System.out.println(id + ":" + Globals.env.getCurrentTime());
m* w% a3 {/ _5 w }! P! X& E( Q3 y) q& M
}
, v" w1 O, B6 i- S8 P( O
' t. `/ ?. r4 c1 j7 l& K; vpublic class ActionGroupDemo extends SwarmImpl {
$ E9 }8 e7 f& y6 H) B; x- w( k5 I ScheduleImpl schedule;
0 i9 X. B; Q9 C, f l" R) ^ ActionGroupImpl actionGroup; B6 G# d3 x- {( z7 d2 D
ListImpl list;# ?% d5 J) K2 z# _! H: U
char Id = 'a';) a% E. O8 Z& |3 d ] c$ C
4 N5 E) Z/ b0 R: @$ P0 r ActionGroupDemo(Zone aZone) {
- U, X' u: F+ ]; Z* H l super(aZone);
- e4 @/ ^% j, t% I8 s list = new ListImpl(aZone);
( S; k7 k: B2 s( u5 y6 h0 V swarmSetp();
1 ~2 V( n; s3 h; @ actionGroup = new ActionGroupImpl(aZone);' W/ G7 q* W( N( b1 U
schedule = new ScheduleImpl(aZone); O1 g* F+ i# E/ h! b4 H4 b
try {6 A0 \2 ?& G# \! h$ M8 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 j# | P7 `0 ?8 h3 X+ \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; E: Y/ p4 I( _. q$ M
! a; d6 F* I9 w/ e( j
actionGroup.createActionForEach$message(list, agentSel);4 W3 l( R# x2 V& y' y1 E
actionGroup.createActionTo$message(this, swarmSel);! u1 @3 r C( o5 p. p" h1 Z, _3 ^0 q# ]
schedule.at$createAction(0, actionGroup);
" k n- L* _! N7 M1 s6 H schedule.at$createAction(1, actionGroup);
7 l) h4 J/ M4 b6 M Z6 } schedule.at$createAction(2, actionGroup);
% p; X9 y$ X) n9 @4 n$ r5 C) Y) R& _8 R% Y& {
} catch (Exception e) {( N0 |4 b- S$ B2 `
e.printStackTrace(System.err);
2 i6 K+ {9 q7 G$ b+ r Y Q //System.out.println(e);5 F& W+ ~- P# s/ H
System.exit(1);2 k- X n# d; T
}
+ i. h: @2 B8 D! Z' c, v' J
! z8 r: S- ^ h2 Y' v4 ^
) q2 @* G9 D- p. g0 D$ E& u }1 l& j2 V; z a& ~/ }1 \: P
2 K* z* Z i4 V4 L3 u private void swarmSetp() {
) w. A0 E* x2 W; V6 p9 n list.addLast(new Agent(Id));
! ]$ V6 }1 M# `6 |& o) Q' a Id++;( h) x5 N; J# Q. \/ e' C6 R$ W
}0 j, }# V& H, n3 i }3 X# o1 J
0 i# i# ], A3 M
public Activity activateIn(Swarm context) {
# f+ _0 e# I/ P4 ^7 d# d super.activateIn(context);
" j6 p/ Z4 f2 O, | schedule.activateIn(this);6 g* g* {9 L7 y* ~* ` W) E5 O
return getActivity();
. S- D$ h# C; d: M }
4 o% C. @$ i/ g7 ]: `- _* b+ N' T j6 {# i8 d, u1 O$ z1 y1 X
public static void main(String[] args) {/ U" I- q5 u3 u& g3 m0 i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( D5 \: r6 D' }- X, ? Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. e6 I- _5 B: ]# \0 u# | a4 \ swarms.buildObjects();$ H8 X* W: n2 `+ e' Q9 B4 }3 \
swarms.buildActions(); t* f/ ~ a* e$ l& f! U+ {' }
swarms.activateIn(null).run();3 J) X! y# p" F' e) l
}! u$ \# k' g. |" n" V; I( @
1 U1 t6 t1 a) i0 f6 p; q
} |
|