|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 R6 i+ T1 Y- _3 X( A3 c
" @' a8 w! [0 M. T+ d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ S+ G' D5 l6 x6 F! r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( [, A2 ^$ p1 o% _/ ^; w5 h
swarm.SignatureNotFoundException6 Z7 C3 E5 z1 F" a9 i) t; h
at swarm.Selector.<init>(Selector.java:76)
, g& v# ] ~4 V at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ G$ o, b0 \3 n W5 ?! [ at ActionGroupDemo.main(ActionGroupDemo.java:67)2 a, c% q3 u2 C$ F
, A# @* |- P) X6 L& h1 z$ A# N0 ~: A8 o! A" f
import swarm.objectbase.SwarmImpl;
6 r9 o J4 p- a$ {4 X5 G' Y+ eimport swarm.objectbase.Swarm;
5 y: n# Y0 n% S& n6 f5 Z) n/ W7 w$ U8 Kimport swarm.activity.ScheduleImpl;
% ^1 x' i" b; H; q* ?0 y! v% Himport swarm.activity.Activity;) w0 l1 l, u" C& J/ d5 k# `
import swarm.activity.ActionGroupImpl;' b9 d6 v! w$ C( h: i% R
import swarm.collections.ListImpl;
' v W7 s. u/ C% p gimport swarm.defobj.Zone; / ~1 b! D) Z9 g( }) t" r; e
import swarm.Globals;4 `, d5 W" `- `1 T0 \5 h
import swarm.Selector;
2 e. n& B. V, ]1 l, \! p$ ~6 w! Uimport swarm.activity.ActionGroup;
; Z0 _- z$ L5 w0 tclass Agent {
& J3 M7 o4 z( f; x( y, }3 A char id;. C s: B4 d$ z, _$ z, k4 p
" Q, L+ ^7 W3 z+ t4 w( ]. m6 T$ ^& j- ] Agent(char id) {9 E# _+ Q5 J& P
this.id = id;. Z b" ^- i# L+ ] `
}1 b0 B' i% F7 O
9 l' r1 \3 U- i6 `2 \ public void agentStep() {4 [& s: ^) ]. H8 r5 I0 @
System.out.println(id + ":" + Globals.env.getCurrentTime());7 k- n" @, U! p' h' n- C
}/ k' J0 O! n! \ q: {& K/ u1 Z2 M
}
]4 \$ H* R/ Q6 H7 }5 D: V. V6 F& C0 D) {! y1 g% {7 ~
public class ActionGroupDemo extends SwarmImpl {, ?' |2 Q0 M/ Z$ u
ScheduleImpl schedule;
1 {, {% }4 X7 `. r% j' H ActionGroupImpl actionGroup;3 T2 W0 p; K! q$ M# H D
ListImpl list;
! ^6 H0 f7 [) t+ u1 @, s: m char Id = 'a';7 ?% R& M5 |/ ^+ s Q5 \
" ^* p8 g" N$ J1 q8 A% S, C. N ActionGroupDemo(Zone aZone) {
8 |! P8 X. P- `6 B1 Y9 S5 H super(aZone);
$ w) |4 l: J# g' p$ ^0 p, w: G list = new ListImpl(aZone);
: E9 h, \% a; A3 p4 D: n swarmSetp();
" y4 P+ @2 C% {0 K, e6 r6 Y2 S actionGroup = new ActionGroupImpl(aZone);: o7 Q+ k1 `/ V, O
schedule = new ScheduleImpl(aZone);2 ~+ ]: d/ Q8 I7 S, G- v
try {
& I% B* p: F# ~$ t Selector agentSel = new Selector(Agent.class, "agentStep", false);2 X6 ? \" O9 V9 O& i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* \' L0 k" b# `# b9 Y
% }9 D# C5 T& ?, t& d actionGroup.createActionForEach$message(list, agentSel);
- W, J' {; d5 F. ?0 S( E2 H( S; J4 g5 Q actionGroup.createActionTo$message(this, swarmSel);
* L; T& W$ ^. A ~ schedule.at$createAction(0, actionGroup);
' k! ~- N7 y3 P* Y; K e$ i schedule.at$createAction(1, actionGroup);
7 {4 @( H& X3 s schedule.at$createAction(2, actionGroup);
9 ?1 c: h9 E* C$ G) V2 n& b' s- |- P! L% Y
} catch (Exception e) {
" }3 h$ b. s6 d6 H p# d e.printStackTrace(System.err);
7 {+ M6 h% h! ~/ `/ h //System.out.println(e);
* ^$ X* L' q2 Z) T1 j! Y; l System.exit(1);
8 x! [8 F1 w2 U: ]" F% d- B& F; p }
, ]+ ~) ]! ]! _
3 r+ s: o5 e5 Y* E+ P2 g3 ~+ [
) n8 R& V8 S/ J' R+ S. [ }
4 p7 U; p" _5 i$ _& \- i
6 e5 w$ ?0 S' x4 F private void swarmSetp() {7 m) E: h. D4 D* X; ?
list.addLast(new Agent(Id));
5 x: E) W6 E, h0 A6 c. M Id++;
. h! b1 ?' G) D N }1 t% D2 A# _3 l5 P4 j1 m
; I4 J" J w' f* y, e& p- B: G- y
public Activity activateIn(Swarm context) {
, F" {1 Y) Q. |3 Z, W i1 H0 |0 z super.activateIn(context);
. |. p% i& ?3 j8 k# z$ e: G! W: S schedule.activateIn(this);
0 Y; ?9 J9 N9 T+ U9 y. {0 N return getActivity();& I+ ]8 { k1 C2 m& G2 g5 Q
}- h% U& U/ X B. o+ @# J
8 U6 F2 h ^$ y5 u; @
public static void main(String[] args) {
' j) L- k4 r6 n- M; v, O5 Q! F" i9 P7 d Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ a; u7 F' o3 D, f- C# v" l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! v6 r; q% b" y4 ?7 [: E: O d5 x swarms.buildObjects();
o$ B* m9 [/ J. Z- x; a% R swarms.buildActions();0 _. s8 w9 e1 Z v( ]! R* c
swarms.activateIn(null).run();2 c# `. W: {! o" T9 S: R; c) t
}
0 U" c! O4 Z' s! s, e
5 x1 p% o/ B" P. I} |
|