|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 [+ N. d T- e+ ~8 g0 x
: B' r4 {& g! V" o& K# b0 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 V% U" y# e; i' {0 Y& @' ~$ P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ i0 V' }8 P, \
swarm.SignatureNotFoundException
$ c6 Q4 E% `+ b2 C( p: T at swarm.Selector.<init>(Selector.java:76)
. u1 S. m2 ^ n- _! b9 D L at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! l3 l: T* a/ n
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* i/ _4 ^2 d2 m: h6 |$ U n, C% V; g0 }- m; _# a. L& ?
0 v7 V# H. [* J7 R( G& X; Y
import swarm.objectbase.SwarmImpl;5 l# v2 @0 x0 _5 R* M
import swarm.objectbase.Swarm;1 ? D8 O& K, E" U% w6 G1 G
import swarm.activity.ScheduleImpl;9 S& v9 n# _0 |9 h: n
import swarm.activity.Activity;
' b" c; {2 w3 @* gimport swarm.activity.ActionGroupImpl;* \* @ w' ^; g6 Z# A# m" m
import swarm.collections.ListImpl;' W8 T8 `' a2 w3 S
import swarm.defobj.Zone; 9 ^5 m3 Z S% }& o3 A9 \
import swarm.Globals;
% _( P! O3 e( H! f- j' I. ]; Vimport swarm.Selector;
( c' @) {& h/ v; u, V0 w8 t: D3 _* |import swarm.activity.ActionGroup; # R, M: X7 `' ]( Q* u3 J5 Y
class Agent {
+ v- f7 {0 ?# f' R& ]- d char id;1 r* k r3 r, b0 L
; f( t( T3 k1 J F
Agent(char id) {
8 P& X/ e8 O, M8 x2 Z this.id = id;( u t0 U- J# ~! L# e8 } @
}
0 N, D8 u" Q3 K) K: H8 f( ]' F9 L2 X: c! q
public void agentStep() {# {; p& I- F3 l [, S( c
System.out.println(id + ":" + Globals.env.getCurrentTime());6 ?+ T- {/ F& F, Q' A
}* V, h- e5 ]/ H0 O1 ~; y* X
}
9 J N8 z8 z/ a3 [0 A5 }
4 C# Y* S5 ~* L. z. zpublic class ActionGroupDemo extends SwarmImpl {
6 u/ W% w* T- w" d" H8 q2 C z! x4 { ScheduleImpl schedule;$ n- q& D* l) }
ActionGroupImpl actionGroup;
y F5 N( ]# N; L# k5 o6 X6 u4 k) B ListImpl list;
' j1 y2 F8 H* O- U/ s1 l4 X; T o char Id = 'a';
( h4 S9 k5 z2 L" L1 F- k# K. D `, g! Q* N8 |
ActionGroupDemo(Zone aZone) {( Y6 q! i6 R, ?2 {( T3 q& B
super(aZone);# I0 x3 C' P7 t1 [- l, ?8 J
list = new ListImpl(aZone);# k5 @5 Y7 l* n- l: P
swarmSetp();# E; X ^7 p0 ?; Y5 `9 Y7 W
actionGroup = new ActionGroupImpl(aZone);: A, U2 w" [ n/ b. J+ \" G
schedule = new ScheduleImpl(aZone); R' m% W$ v6 |% `$ q
try {+ v( }+ I" l1 J3 K: H( o
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 J/ H# w3 [: O6 v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ U: z# n9 `5 r& C+ B- X6 L
2 q ^+ o8 q2 ?% r/ ? y6 H actionGroup.createActionForEach$message(list, agentSel);
& P4 E3 p) n0 V% R# E0 `0 M/ E actionGroup.createActionTo$message(this, swarmSel);
v* f3 N$ O9 }* }. w& ^ schedule.at$createAction(0, actionGroup);
3 R# h0 F! z4 @ schedule.at$createAction(1, actionGroup);
9 v/ ^ E& ~/ d8 A6 e: ? v; P- J schedule.at$createAction(2, actionGroup);
0 J6 r9 ^( p: X# I* o" V4 n; l9 b1 c2 {! k7 e
} catch (Exception e) {6 ~. W( }1 |; C e
e.printStackTrace(System.err);7 p0 Q( i( O1 x. k* i* Y
//System.out.println(e);( U: R+ U8 T/ L/ V! h
System.exit(1);; }7 g9 f1 n! H# W$ q
}3 y: i" J% y& a6 P* J: T: m
( r( ?2 p' L' q/ K. R# u3 O( p
" w) K3 W& I: A! O5 E! n7 ^8 E }
* U1 h$ p7 ?% n, @1 s' t# @) g" u' ~2 r( G. E3 |/ R
private void swarmSetp() {% }, D6 z% B& v6 @) G
list.addLast(new Agent(Id));0 @/ W; l: S# A' k3 J& c$ m1 m$ d8 s
Id++;
& f" r+ G% R* | r p& J }( R* z5 h& E/ P8 l& U' x' `* W9 I) [
% r/ X9 w2 S7 m2 g+ [# h; e
public Activity activateIn(Swarm context) {
+ l9 a5 ^" F- @1 X0 e/ J, J& ? super.activateIn(context);
2 a+ G |( j0 F/ M0 s* Q! T E schedule.activateIn(this);
( I/ E7 d1 U' } N* u) V return getActivity();+ ?& M3 |9 c6 [
}$ Z e9 J. y! u. p
' C3 P3 m: |( u; n public static void main(String[] args) {
: x1 A M0 Z* \1 I, E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! J8 F* x0 a* M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' v1 c" Q, T5 q& x. W; Q, d4 ?
swarms.buildObjects();
3 P" p |3 a+ F4 \- K: m swarms.buildActions();
/ C7 O' {. ~3 L, p9 S4 @/ m o swarms.activateIn(null).run();
/ h$ `' N2 j5 }. |9 @ o8 Z( T8 _ }
) z7 a. f* o8 k N1 p2 P/ v j. F. _/ F- L
} |
|