|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 A9 \! M: c& I4 I. y
( A, ~, z; R& K* H2 G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ W7 e, T# ?+ L% r) P9 l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% o& {, H$ y" T5 C
swarm.SignatureNotFoundException; Q; v5 m y& K
at swarm.Selector.<init>(Selector.java:76)5 ^3 M4 [- c/ N, p3 [) Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ T a/ Z: ^1 E+ c# j6 W1 E' h at ActionGroupDemo.main(ActionGroupDemo.java:67)
* [' E7 Z2 i: Z4 Z
3 X- d" \! X o3 ~/ @9 e6 B( L, Y: @
import swarm.objectbase.SwarmImpl;
" I8 |6 s. H9 [& Iimport swarm.objectbase.Swarm;
* ]% E& N" W$ J7 a; }) o" m& M$ @import swarm.activity.ScheduleImpl;
6 i7 K- R) ]# s7 ~$ P, T5 oimport swarm.activity.Activity;
3 p' `( T! |% r' ^3 Rimport swarm.activity.ActionGroupImpl;
; ]+ O( {" _( Z8 timport swarm.collections.ListImpl;
( J1 h0 V% ?6 Bimport swarm.defobj.Zone;
+ @1 T. E* R+ }) T9 P ~% ~# qimport swarm.Globals;$ n& a' D0 [- w# X
import swarm.Selector;, O m" V7 s3 R- {
import swarm.activity.ActionGroup; & w2 |$ Y- [/ e3 M' b9 w+ h
class Agent {! S% [; Y# z9 `* G# ^6 i- @
char id;
5 k' d) N2 O& L: `2 t9 |& V: {! H) `0 v( R" y. }9 L9 C
Agent(char id) {
& B$ }8 ?1 {6 C% L0 ^2 b this.id = id;
- x% ^3 S9 ?- \) H }2 p- i n X) v) u/ t+ y
; t, x9 v9 U* {$ J: S z
public void agentStep() {( q g9 V( M$ J9 v0 [. j& H( B
System.out.println(id + ":" + Globals.env.getCurrentTime());
# }3 [* T3 ?6 x. i# u% q h) h }' L& W# s$ y% c* }1 J9 A
}
1 [$ w4 c0 q. x, h% l8 o0 ~! ?' Q; m( s8 t- ]# u6 g% ^8 {, o& b
public class ActionGroupDemo extends SwarmImpl {
5 H8 J' v; e" z5 R( N$ L2 a, B ScheduleImpl schedule;2 w: q$ V" ?3 N. \+ M* N
ActionGroupImpl actionGroup;0 p/ K* P$ d1 {( b# X- p9 A
ListImpl list;
D5 U" g2 t5 C! Z5 Z char Id = 'a';
3 H5 M: y; L" q F4 k1 r- k4 r/ w4 ]
ActionGroupDemo(Zone aZone) {, h# K# h) G e" B3 k& j
super(aZone);
0 P$ }8 c/ Q" W, x2 l list = new ListImpl(aZone);$ [ G2 K& o+ ?
swarmSetp();8 [: ]7 C" o6 \# f* ^( r: {
actionGroup = new ActionGroupImpl(aZone);
8 G# F$ V2 K) z$ ?9 l: H6 K7 ^" T* s schedule = new ScheduleImpl(aZone);+ F) L6 w' m j1 w9 N: ^
try {
8 Z$ J3 A0 r8 ], c9 ^- O Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 u4 s4 s; ^# @3 f; _1 V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 H* H/ t" G9 K/ W8 }, `
+ U2 ?; y7 z( N0 h$ I; K H$ T- m actionGroup.createActionForEach$message(list, agentSel);) A9 A7 \ Z) a' V3 \7 C
actionGroup.createActionTo$message(this, swarmSel);
1 O% W3 L! B0 d2 |# i1 I6 u schedule.at$createAction(0, actionGroup);4 A& V6 ^7 {. M' e+ M8 l$ a. s/ g
schedule.at$createAction(1, actionGroup);7 K7 F7 V( J# I" \" I. e
schedule.at$createAction(2, actionGroup);/ R; h5 q8 g) _' C9 W
# h8 r& N# b& k$ J
} catch (Exception e) {
; m' U; @# H2 u$ A7 f' x, I0 ]% H e.printStackTrace(System.err);
" }1 ~7 P+ f4 f9 L. g4 r //System.out.println(e);7 @3 `0 B6 s* P9 p) D+ v% N, u
System.exit(1);
7 H% m) s! @9 z* D% M4 h; s }
* l! e& u& S$ m9 F' n( I7 j8 x1 `' T& L) v# v
; d; s5 k. X, j' G1 X6 V4 C6 H }
. m) x3 z) A! x$ P5 G! J, ` X, L+ L c, Z
private void swarmSetp() {
8 n/ z. [" U& r% F; ?/ U& U list.addLast(new Agent(Id));2 {$ E6 o- N' G8 `- }
Id++;+ c4 L' V- D+ c- q
}8 C4 _- i' a% X- O
1 W9 z% O! G, x% _# r. _; E1 A) H# |$ _
public Activity activateIn(Swarm context) {
; V/ L& x: W$ e X- e* x, I super.activateIn(context);
) k6 ^9 q" e# M7 Z B schedule.activateIn(this);& ?$ p' B4 G3 U+ @! q! J6 P
return getActivity();6 R- W% q' ^5 j$ D& e9 t
}8 h4 m% R6 b8 y6 ~
0 E/ i% P p; f* C" V2 w
public static void main(String[] args) {
0 {7 M; ^1 H. b+ x0 f, M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; X6 M8 a, \$ `7 C D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' _8 d) O5 y* ^# _. b3 M swarms.buildObjects();% _, d1 [4 v0 n2 p
swarms.buildActions();& w2 }* g; K. L* h
swarms.activateIn(null).run();
: @. ]& ?: _+ X: N2 S F0 |9 C }
% t1 I6 p8 K( b# ?7 i0 E! Y! C) G8 ~* y7 h$ i
} |
|