|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & n# d& ~" B/ l x h
. B4 ~, H* S% N% {( ?# K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) U$ O Q- N2 M: a% k% P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 N/ E a0 G7 `0 C" A/ e& Kswarm.SignatureNotFoundException
: d- a7 [ Q& a9 g- B at swarm.Selector.<init>(Selector.java:76)" L- ^/ V! K* O. W( Z, J) v- c2 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ V' N& l4 F+ @- ~1 w
at ActionGroupDemo.main(ActionGroupDemo.java:67)
O6 }6 s) Q# s) `, t8 \
: }7 C9 ?# ?) H$ n
' D% F$ |. r; iimport swarm.objectbase.SwarmImpl;
- i& f! h' k+ W/ [8 i9 h6 |import swarm.objectbase.Swarm;- K! ]" Z# [2 q9 M7 j- h0 Y
import swarm.activity.ScheduleImpl;
3 @$ x9 T$ M: Z- k6 ?$ Zimport swarm.activity.Activity;
. u- [: u8 o7 }/ x/ ~import swarm.activity.ActionGroupImpl;
$ S, h, V- M/ ~* O Z4 kimport swarm.collections.ListImpl;9 i3 A* ]0 |% U
import swarm.defobj.Zone; " t" g( V- f |8 N# a7 h1 p- o
import swarm.Globals;
) Z" t4 K9 z6 w8 U( Oimport swarm.Selector;# @0 M7 z) d1 ~( o* K0 i4 v
import swarm.activity.ActionGroup;
* w4 o. J* i# X0 I" f, R) l/ Pclass Agent {: V" D; l& p8 k7 c. R
char id;
+ u$ }- O! V/ c# m! I* A9 A- R% p2 d2 h1 K; [
Agent(char id) { R Y1 Q) @3 u
this.id = id;
2 x9 h' ^; t3 N- T }" N* M1 c3 g& R& q
* t3 ~- K; O8 s) x* s7 w. o* { public void agentStep() {: F6 V4 j# c/ K0 Q3 l" M4 N4 L+ C
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 u0 {- y, _1 C3 |" F( N }4 ~# A7 \- s9 n- Y8 d4 _. m0 m' H
}
! f6 s2 \$ {: H! w9 r5 J# _
L! i- I1 W4 d( N4 }1 l$ ]public class ActionGroupDemo extends SwarmImpl {6 J+ C! U8 p$ h* R* d
ScheduleImpl schedule;5 c( ~+ n# j& R5 _0 p
ActionGroupImpl actionGroup;, G! U& ]) l1 N( A) v% y% `
ListImpl list;2 m3 w# S0 V- g9 w
char Id = 'a';
( c; P! z* F, H8 j- p+ J- Z$ W; i. O% f. F6 S- c* s' S/ g# v5 Y
ActionGroupDemo(Zone aZone) {9 n6 f$ ~+ L( h3 a$ T" A4 W+ s9 Q
super(aZone);; d2 W1 Y/ f1 m+ M0 n
list = new ListImpl(aZone);) ` ?$ M; L+ W9 v" D
swarmSetp();
1 A! `7 e1 c1 O" V+ G* a actionGroup = new ActionGroupImpl(aZone);
v( t8 h1 a8 [5 \5 K8 L: [6 H schedule = new ScheduleImpl(aZone);4 W) c) X1 ?; v9 W* M, X: ?
try {: ~+ a; v) y3 C4 p( W: z+ M
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( B% M. t# I* S8 G Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* E8 A; P8 f, u3 U. q, D O , I3 K3 P6 E2 j! L
actionGroup.createActionForEach$message(list, agentSel);6 w$ l0 c: d) y w6 x! S7 I! v: c
actionGroup.createActionTo$message(this, swarmSel);
: K3 V6 |0 l0 g' `5 k1 ~& \3 o# d schedule.at$createAction(0, actionGroup);
# t Q- |, T8 E0 q0 A; v schedule.at$createAction(1, actionGroup);
/ Y8 N, w/ @" x% v6 D1 A schedule.at$createAction(2, actionGroup);9 N1 N% p, L; n g0 l- V: Y
; w- K$ z3 g$ l/ [8 L& _/ O } catch (Exception e) {
8 N; h' z& E" N! z" g" c9 x e.printStackTrace(System.err);
* D( v4 x6 L1 m) V, }0 ]# L //System.out.println(e);2 m) C3 Q5 ^! D' l& D. p
System.exit(1);; `: T; G* O& i% R" o+ [" ]
}
6 |$ f! a3 y# j) _0 X2 C$ ]
/ Z; ^ A: G$ F% E9 Q. s! G8 b
0 O, t% t3 a: Y; y6 l: j: e1 ` }# V1 m/ s+ \& U7 t
6 \ C( X6 ~! I5 } w6 s) n3 K. v
private void swarmSetp() {
, L, I, |# e. U1 r' g* t$ J list.addLast(new Agent(Id));
5 L" o( K; f( B4 ^ Id++;
( ]6 C- P9 \+ i( |( U4 h, F9 ~ }0 h6 b+ j; L6 j9 t" b( W3 n) a
' k) u5 @8 ^, ?5 h
public Activity activateIn(Swarm context) {: z7 i! X) w# E- P6 U/ Z
super.activateIn(context);
8 D( Q- f* c$ P7 X1 F% m# E schedule.activateIn(this);
9 d$ f f1 |) X return getActivity();
& w6 c; p* N' o }6 s$ }( u# H) I* S( ^
% s& H9 A b+ b* D) i
public static void main(String[] args) {! ^/ ^' P# T2 p+ k1 P& r
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 R3 p, o4 E/ K+ N8 ?2 N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 H' q# N' i+ q0 q% p" X+ E swarms.buildObjects();
1 w* p; U( c* Z! u. ^; b swarms.buildActions();( j5 R: Y3 I3 @7 r
swarms.activateIn(null).run();
, Z4 W# o8 u! E" G8 ~: \3 M }; {) E4 z7 ^( w& {' ^; _
$ W/ R. \$ @# r} |
|