|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& R3 W- A5 h+ D9 Y% n2 S6 v8 z3 R( k+ U- |- H, ?" b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Z& }- a5 B, w$ k8 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) E0 G, ]9 E5 e& b$ t) Q9 B l& Cswarm.SignatureNotFoundException& R1 `. S% ?, {1 u! v2 S0 c! r
at swarm.Selector.<init>(Selector.java:76)
+ m* p4 X6 t6 o& a" V# _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 _8 U2 q& @7 J2 T, e! ] at ActionGroupDemo.main(ActionGroupDemo.java:67)
% a2 l# N1 V% z W% D6 N8 X9 a2 f4 x! ^$ W. Z9 d. F
9 o* c3 A2 R* a* B4 Eimport swarm.objectbase.SwarmImpl;
/ Z* M: R7 ^& d* V! d, Pimport swarm.objectbase.Swarm;# Z7 ~# p- s9 K3 L
import swarm.activity.ScheduleImpl;
( [5 G' }. }# E+ ~# x" ~! Fimport swarm.activity.Activity;
1 b4 |- ]: a: n) [" kimport swarm.activity.ActionGroupImpl;
# Y3 r4 t4 f8 Zimport swarm.collections.ListImpl;3 N4 i* g6 F+ }/ t0 D- Z$ J
import swarm.defobj.Zone; % S! f. ~6 w# d7 t
import swarm.Globals;
5 ^; ?9 D6 n7 U# ~import swarm.Selector;
7 h0 v9 t0 ^) timport swarm.activity.ActionGroup;
- v, u7 m6 Q$ l# v. }9 Y' p- S1 yclass Agent {
+ H# J) [& q4 v. E; G/ C char id;
) W7 q) x8 s8 A. O) ~8 K
9 p& Z4 J; H' x, n: ]' z! y& n: F Agent(char id) {
, @ V& w1 _: y7 E8 x this.id = id;
2 @6 X3 L+ q( b- W1 ~ }
' z, r9 Z3 b$ ~9 A7 U4 ^8 c4 C; u
4 k9 f; U H) D# S; x) I' a' c public void agentStep() { i# X4 E8 n9 a! L6 @7 o
System.out.println(id + ":" + Globals.env.getCurrentTime());( p' c9 F' ]6 H7 z1 z6 p. z
}
$ W. o6 c% I1 B+ l' k9 s* B}
- n, @1 t4 y! T6 D) O. O+ \' e! Y% U7 Y1 B7 q( P
public class ActionGroupDemo extends SwarmImpl {
$ z5 R( I/ F0 k) r% D! p! A ScheduleImpl schedule;. U( m6 F$ t, Y( x( g3 i* P! b+ j
ActionGroupImpl actionGroup;
% j% q' r2 Q0 W4 ]7 V! m ListImpl list;: p# X' }/ ]6 K4 B+ ?
char Id = 'a';! o6 v7 ~% q2 t( n: p
3 E3 [' w8 B( R) _+ z- W/ h6 P* H
ActionGroupDemo(Zone aZone) {6 A$ u f# i9 c6 @, b
super(aZone);$ ]2 Z: W" ~9 M+ M5 c% W
list = new ListImpl(aZone);
# }( D" i4 L! M& L+ {, b5 A( e7 ` swarmSetp();
0 \4 V0 Y" j3 F* M& X9 P actionGroup = new ActionGroupImpl(aZone);
, X Q# l* ^+ u; M. x, G' P schedule = new ScheduleImpl(aZone);0 N2 f; R3 t' y( O7 E( O
try {
. W" L& N1 j. h# z( W Selector agentSel = new Selector(Agent.class, "agentStep", false);
: {) G& i4 e" w+ L% k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 R" b4 R" I% _! m+ g: z" b 7 z- Q# c% c+ T' _# O8 N$ F6 P
actionGroup.createActionForEach$message(list, agentSel);
# z; \, K9 z* q7 U actionGroup.createActionTo$message(this, swarmSel);) U! v" Z* D) y V! o4 ^! X- |. w
schedule.at$createAction(0, actionGroup);
0 i2 p9 B B; `8 D7 @5 x* E" w schedule.at$createAction(1, actionGroup);
# o& }) j% k0 x9 [2 q schedule.at$createAction(2, actionGroup);
1 N- ^! ~# |- g3 p/ O) J' p a% w$ Z; y5 B( ^$ i
} catch (Exception e) {3 R2 q! u2 h+ u9 \
e.printStackTrace(System.err);
9 K6 L- ^' @# |! v- e4 [" W //System.out.println(e);8 L% E( F$ ^+ f' X1 O
System.exit(1);* x* V6 ?8 {. ?6 T8 \
}
* b$ W/ j I8 v0 d! m$ v
1 h* x; m! h( Y' M2 G& }3 d1 K, a! y z' N) h/ b0 I( w9 J% T
}7 U! f+ M9 k% \) M# P
: P: z" o) ^4 I3 ?
private void swarmSetp() {, A3 f! m1 l$ O2 ]9 V
list.addLast(new Agent(Id));* b7 C; E; S% |- x% a o% c
Id++;
6 o' O2 O" ~" k8 @ }% ]% Q5 o e1 d& J
7 Z+ L- [) n5 p- Y5 w. z+ Y# N4 q, f( o
public Activity activateIn(Swarm context) {
- a1 o1 h. L# q0 b7 o# V8 z( [ super.activateIn(context);) _4 U8 V x/ X/ p( \% _" a
schedule.activateIn(this);
6 M" W: m3 j: h4 P; y! s return getActivity();0 ^& y a. I( ]+ n9 B4 V9 L+ P
}+ G' k+ D, G) t5 v4 z( |5 a
( E4 R" ?+ A, T0 E& q public static void main(String[] args) { q" T3 H0 \1 S0 a+ y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 v3 U" L( l- c6 a! P% L
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: k$ _' H8 S, a
swarms.buildObjects();
: l/ H9 o; u: T! L& h swarms.buildActions();
! _/ s! x0 k/ [$ e* C/ G- T' ^* ~ swarms.activateIn(null).run();- |6 T8 d0 w& ~9 Z% l6 T4 s; _- J) X
}
" C% f6 {3 W/ y+ D
. s4 b7 n, f- k" l. w7 W7 d- }} |
|