|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 J$ q3 S+ ^8 p0 u9 O7 V
- T2 }+ v5 \- ~- Z7 Z: c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- [5 ?6 S8 _$ c4 N- s" ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., A) p1 u6 H& H; P) L
swarm.SignatureNotFoundException
/ I T5 v$ k8 Y$ r4 B& E at swarm.Selector.<init>(Selector.java:76)0 a) V8 J/ t; U/ l$ X' [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ^) W# S: i% _/ ? at ActionGroupDemo.main(ActionGroupDemo.java:67)
. r7 m- h& b, }* |+ _# ?7 C5 r: g) F- C
4 K( C. Z h; X- T1 v! ]. E! x3 iimport swarm.objectbase.SwarmImpl;
* @' P# S% ^* u' l4 w& limport swarm.objectbase.Swarm;
1 J6 P6 j9 Q3 X% o" N/ zimport swarm.activity.ScheduleImpl;
9 c! n2 f9 ~* Q% ]3 l) E Q% y) ~import swarm.activity.Activity;
( `4 W" V* r7 @; ~; rimport swarm.activity.ActionGroupImpl;
: f4 @& b/ J: Fimport swarm.collections.ListImpl;
( j5 w) b- \# L/ W' W! Fimport swarm.defobj.Zone; $ K* T6 j% Z+ Y! ^. j, s
import swarm.Globals;
: x1 j- X8 n0 U1 }/ _. D) J" L: I6 Nimport swarm.Selector;
) W4 P% D' @" Z1 b9 Aimport swarm.activity.ActionGroup;
' g) o; j8 O, {+ k- u1 ~class Agent {
3 O. g# ]8 u% \8 f4 b- ?- t0 `0 U char id;# l1 e" ~1 n7 Z6 g
) |5 J# Q; m, U! }
Agent(char id) {0 X$ V6 C! ^* P* e( P( x& t
this.id = id;
5 r, Y- k2 g e }
) b" o$ F* H* q9 p6 z% [8 s4 V+ m6 `# X* @& `4 J
public void agentStep() {& p9 ~3 F; u9 S/ s( x- W
System.out.println(id + ":" + Globals.env.getCurrentTime());/ Z' a# s1 [$ ]- h
}8 N0 E. q& k5 N6 w3 D3 n! A* l
}
7 n- Y: }/ Z* M! q( ~' u* |& b' Q& g* I. c) b
public class ActionGroupDemo extends SwarmImpl {
6 I1 ^3 Z8 D# g" O/ Y ScheduleImpl schedule;" J7 k4 ^2 T: A( {
ActionGroupImpl actionGroup;
4 j3 }8 e" p7 y% S' Q: E1 p/ K ListImpl list;$ X5 F5 Z; |& T9 v
char Id = 'a';
' _# J9 G! U$ O# [) J
; y8 ^% _' {) u' I: a ActionGroupDemo(Zone aZone) {
! d( S) Y$ T& W super(aZone);% ?" V7 Q& K1 o9 D
list = new ListImpl(aZone);
9 N6 Q5 I: r2 w& q$ c swarmSetp();
4 Q7 C* s; K- H4 d actionGroup = new ActionGroupImpl(aZone);5 H0 F$ P# J, V% U1 {
schedule = new ScheduleImpl(aZone);
5 v' a7 g3 \, M) i/ H$ g try {
3 w* W; b* R7 t; |2 T Selector agentSel = new Selector(Agent.class, "agentStep", false);7 x& K8 f; q& _, N) m; l# }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ i( I: v4 Q. G
. f: h+ m5 O2 ^) y7 U: c actionGroup.createActionForEach$message(list, agentSel);% ?; q; S! }8 E# v1 J* }
actionGroup.createActionTo$message(this, swarmSel);
H1 I M' J) x4 L7 g3 \" J schedule.at$createAction(0, actionGroup);: ]% e# _# M3 f; R* C, y7 L
schedule.at$createAction(1, actionGroup);
( A* W0 c6 ~0 N schedule.at$createAction(2, actionGroup);4 v U2 P6 R3 L$ b
- C2 T) n* a8 z% t } catch (Exception e) {
! p9 ]! o" c, [+ L6 Q+ k7 Q e.printStackTrace(System.err);5 F1 V! h5 J6 R7 s+ |$ f: X& i
//System.out.println(e);/ o5 {/ x3 l6 [9 j& M3 t1 S
System.exit(1);
' H# g5 K* O+ p0 v* w* O } I/ Y& V7 l: a+ L$ }) \
9 c) t; x, I+ {! c- {0 A! ?7 Y- F% N+ @# B+ D
}
$ m$ Q5 G- t- ?& @6 k* f0 b
, `* c8 S0 F" N3 l1 _- m6 r- J private void swarmSetp() {/ [ Z A. |/ F! u; q0 A' | c" M8 o
list.addLast(new Agent(Id));
2 `$ D" J/ ^5 d: x6 d6 h/ T* j7 e Id++;
* S" P. x! D- D }
6 s; h6 i' a! f, O1 e# t9 G8 H/ B7 p! }+ C$ p# T7 O& E
public Activity activateIn(Swarm context) {
9 c1 C) \& i8 ?% x super.activateIn(context);, t( k# b$ b! N. ^7 {( X1 P
schedule.activateIn(this);5 D- @" \$ g% r% ~" E) `
return getActivity();
# R4 C7 c! y/ {# Z }; v& W; { M# G# h; n+ y
1 I6 ]0 k5 f. M3 [ public static void main(String[] args) {; ]5 o# Q2 V* B% ?8 X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% S; E" l% q! F; [5 y! u( I U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) M. ~3 H5 Q" `+ P+ s- X6 _ swarms.buildObjects();0 w F$ \3 l s1 g) ~5 t
swarms.buildActions();; `5 @; i. C; Y4 l4 P
swarms.activateIn(null).run();2 ]" ~ n9 X8 R$ o3 r& x
}
2 o2 a& o* \ R u- F% y9 [" X3 F( u+ L! c2 ]+ z# Y7 n4 D
} |
|