|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # I% k! r2 L3 Z( z
- q6 b3 _" w/ q8 r! _% a; C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ g- g3 c3 n2 r4 l, c; ]9 N5 j" a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 O. h2 E% H2 k/ }swarm.SignatureNotFoundException
8 @4 Q4 t* t3 Z6 Y. C, A+ _ at swarm.Selector.<init>(Selector.java:76)
6 X1 k& E7 y" B @ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: g+ ^- X" b2 T+ v2 d$ G% G at ActionGroupDemo.main(ActionGroupDemo.java:67)4 \2 Q& @9 z6 f- V% O$ _' u
# J( U5 ~/ D" O; e- Q. Q
+ ^7 u$ m! r% T$ M! c; O2 A
import swarm.objectbase.SwarmImpl;
1 y0 \# R0 U6 Z; oimport swarm.objectbase.Swarm;
. y: ^; r# m& F+ c8 u4 H4 |import swarm.activity.ScheduleImpl;
E2 A2 ~0 x7 b @3 G( l+ R, Rimport swarm.activity.Activity;. I k( i' _6 z9 K' D
import swarm.activity.ActionGroupImpl;
7 ^, f/ Y% ]5 k) `* } _import swarm.collections.ListImpl;
* [' C0 r, R3 vimport swarm.defobj.Zone; 0 Z$ |* a" J+ V7 a( X- W* L- S
import swarm.Globals;
& M. n/ j+ A1 a B$ r1 L+ Y) q# {import swarm.Selector;
5 E. }" H6 n/ n- q" M) d; Rimport swarm.activity.ActionGroup; ' Z% r' z o6 N: W( L4 P& Y
class Agent {; x5 w9 q7 ?: ]' q( ^: p
char id;2 U# y5 a! @2 f! c
/ S+ q9 |$ A. Y+ q3 U4 ?
Agent(char id) {, ~! f; r4 ^1 |" U' s& {
this.id = id;
; M( `+ {; M3 m }; v# ~+ [1 g! {- H& `0 m0 e* \
, v% c0 C( ~1 j% s$ T& N
public void agentStep() {
9 ~4 n/ d8 y: h* H System.out.println(id + ":" + Globals.env.getCurrentTime());2 K9 o, X8 T, R8 h
}4 e0 o) {( {5 W, q
}! U* H! k$ W% ~ r; H2 f( H: V
5 S" P0 j s( \ {# {! Mpublic class ActionGroupDemo extends SwarmImpl {
! G2 l3 ^) X; c# g f ScheduleImpl schedule;! Z* @. s3 d" U$ Z8 b
ActionGroupImpl actionGroup;
# b$ r' n Q9 I! p r1 r9 A ListImpl list;3 i7 v4 S+ D* |. d/ M) a& z
char Id = 'a';$ w0 P5 u+ i3 q3 J, N! E2 R3 S# K
1 E# v+ } }/ ] i% [. ~5 O( y/ t
ActionGroupDemo(Zone aZone) {
% g8 O+ G, h l: e super(aZone);
6 H. P; R- M0 |6 q: ? m! P5 F list = new ListImpl(aZone);
% E* Z3 u4 X/ a swarmSetp();8 Y1 g# e: _7 q
actionGroup = new ActionGroupImpl(aZone);
7 U' Q7 `$ q! s* T' P schedule = new ScheduleImpl(aZone);
* W# C! Z% q C& q& U/ `% D! v try {
4 K4 [: {7 ~+ L0 n/ @3 B- d Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 s. V# _; p" ^3 V' p4 Z$ S! z* P Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; O) H# U4 _( p. H- q( _
- J3 q+ w# Y9 D! d
actionGroup.createActionForEach$message(list, agentSel);
, C9 V( a# q" q% o8 M' w2 O" m actionGroup.createActionTo$message(this, swarmSel);
4 r1 g# Q, q6 @' e" a2 p schedule.at$createAction(0, actionGroup);
0 _( S l6 ]0 r& V& z% t" V' Q schedule.at$createAction(1, actionGroup);
$ Y1 a1 y! N0 c4 O schedule.at$createAction(2, actionGroup);
" z& ?; |+ l. h5 V- e5 w; i$ {4 h8 a
} catch (Exception e) {
: \1 K! g- F( r% a; S3 K# s e.printStackTrace(System.err);
' L' c" S. A9 M8 F9 R; R/ [* E //System.out.println(e);
; z) K5 }4 ?+ K1 R. m$ J System.exit(1);: D# n! o+ ]; P0 X* Q
}$ a1 B% \/ T/ ?- a2 _
5 U, F* W: Q& b/ a6 Q2 M1 J; u- ^& X# x+ @
}6 |$ D2 G9 E& x" ]
9 x. I! i* X; ], R2 _( l private void swarmSetp() {* `! v0 V$ \$ y* s
list.addLast(new Agent(Id));
$ G3 `& d- |% S7 _. [; i' A Id++;
2 X( l5 ^3 v, X9 C }$ v* N+ c& m+ j2 ]2 Y
6 e3 ?' a$ a3 O4 G, S0 n public Activity activateIn(Swarm context) {; V) V& C3 G9 [
super.activateIn(context);
7 D0 a* @/ I8 O |* U; @; m schedule.activateIn(this);# p! X" U5 P( [# t% n" T5 F
return getActivity();" y" I5 Y T+ D& N4 `. L8 [5 K
}
" I% `/ B' N/ o5 m+ ^
' @8 D# g# M5 @" q! ~4 Z public static void main(String[] args) {
8 E$ G* u8 ?8 n7 V1 n( X Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ w* d" R! Q+ C- V# ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); a& w+ g# M3 j
swarms.buildObjects();4 u* K# w; C& Q: b X1 [$ T* D
swarms.buildActions();: s# p4 L5 ~1 w/ o& m* @. ?
swarms.activateIn(null).run();
/ T6 P X$ U- g4 e7 t2 z9 S5 S2 L }
; m: X2 t% E4 b! u- _! W7 M
, Z$ D3 d4 p1 g# v E5 c" {$ g} |
|