|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- x N) G9 n' j. p+ I8 H1 X5 N# S# T5 g5 c( q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. ~, k+ O1 F, s! i9 A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ T9 X0 u) l. \# x. ?& c4 S' w
swarm.SignatureNotFoundException
9 ?7 P8 g8 B: k$ ?! L at swarm.Selector.<init>(Selector.java:76); h4 }9 B0 {4 _( ?% J+ H( j9 w
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 v! f; S" \! o z' t; u
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 U0 g' K7 G, D- z* _" d- h+ q' O7 q! [% O; G3 g' L& V
3 ]2 s h. L7 iimport swarm.objectbase.SwarmImpl;
6 `0 H8 g) w1 uimport swarm.objectbase.Swarm;
& b. d1 u4 Y1 I# b3 cimport swarm.activity.ScheduleImpl;0 _2 o2 W4 V! @- D1 U6 B% E
import swarm.activity.Activity;
+ @3 s2 ^7 ^5 Q( Wimport swarm.activity.ActionGroupImpl;
$ ~. V$ c/ i3 T( G% |1 vimport swarm.collections.ListImpl;+ Q; S- r, k9 x
import swarm.defobj.Zone;
* L( ?- o; Z+ d/ k6 s3 {import swarm.Globals;
1 g% D* C; I7 {- Pimport swarm.Selector;
$ ^+ A t8 z* N% W4 n% u U. z% i) gimport swarm.activity.ActionGroup;
J* F( }% W- }. G/ Xclass Agent {: [# G1 z+ b3 L! v! ?& ~+ W Z, A
char id;
& W: B* `9 z7 ]( N) a" o! q, h+ p: F( K% }2 M T9 E1 d* y$ E
Agent(char id) {: [% \1 Y2 O5 }* Q
this.id = id;
. j) B; C( B) T+ z+ I }
, q3 g% i" ?1 q: ]0 B5 q( B
5 w+ K/ D2 ]$ V; E2 a public void agentStep() {
' Q& w1 w2 B( Z! v. [6 K9 | System.out.println(id + ":" + Globals.env.getCurrentTime());( z# R5 ?( {7 m+ T9 y# o
}1 i2 C3 [ p1 p3 w0 _+ o$ k
}
1 r1 F% `: B7 z+ X5 S# {& H2 x0 l( V/ ~: V5 I, t- p
public class ActionGroupDemo extends SwarmImpl {
" S- t4 x4 e) E ScheduleImpl schedule;
( L5 s% F0 q" w, r3 Q ActionGroupImpl actionGroup;* Q! [8 P) _) K1 M/ {
ListImpl list;
% H3 r) ?8 B q9 Y5 q5 Z7 ] char Id = 'a';
8 k# g& X8 G" [, m
& w8 }. E# l. u1 k9 Z ActionGroupDemo(Zone aZone) {7 I, T3 R5 @7 a- n
super(aZone);6 D* ~( g0 [/ f G
list = new ListImpl(aZone);
- V% \0 W% q8 H- j4 G; A5 [ swarmSetp();
7 v3 f/ g0 I% L/ g) [& g actionGroup = new ActionGroupImpl(aZone);
2 v# r4 E% p& \ schedule = new ScheduleImpl(aZone);6 S5 w. j# H6 H( J P& E. W
try {
6 ~+ p- b9 E& G3 k" x3 n Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 ?1 V/ d! p& \4 D0 m" R) V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# [; w0 d; C3 e5 E5 `1 q ) c5 K% C; Z |2 x
actionGroup.createActionForEach$message(list, agentSel);
9 c) l8 R; B! Q; ^% U2 X actionGroup.createActionTo$message(this, swarmSel);3 `6 K) f3 I. z4 y0 z
schedule.at$createAction(0, actionGroup);! r) m* T3 {5 _- m: _
schedule.at$createAction(1, actionGroup);
R" E. o% D0 _# R3 D* O) }% A; N5 f schedule.at$createAction(2, actionGroup);
3 L) D( e" j/ w( M; X" K$ h( p
# N9 W6 d0 ?$ [& B' L c. Y } catch (Exception e) {
_9 t, V% I- ]! x/ _9 }, g e.printStackTrace(System.err);
9 b* ]7 q$ ~3 R //System.out.println(e);
Q2 I. F$ B; S; p) i4 S System.exit(1);
4 d. ?0 m6 _+ J) v' C8 t; {1 G }* ~* ]# v* g* p! `. s% o
0 s* v2 o( b7 g: F
% | s8 P' U) w! w }
2 B @: c' d, i8 _9 d1 G
5 L, m+ S+ C7 T7 h1 z! o$ ^ private void swarmSetp() {6 |- c& i4 x4 b4 T* ?
list.addLast(new Agent(Id));& B! T2 J, _$ D# \# q
Id++;
) T/ q" `4 V2 |5 C }$ |( d+ w+ k! ^% r
% Y. C# f# Q2 {
public Activity activateIn(Swarm context) {
& H8 u3 {! Z, y0 ] O* F" f' p: X super.activateIn(context);
" d6 I- k# K5 v6 t/ G( n( V schedule.activateIn(this);7 y7 H/ c- L) o
return getActivity();5 M, t7 Y0 u* F! F4 s
}
: s1 m' J+ K7 ^2 e
! h: Y: Z2 h- L% G) h a, d public static void main(String[] args) {
1 V$ J, F. A! X, B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" H! ^' \. N& u3 o6 D. K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( J2 L" T' S. L+ o- G3 u' R swarms.buildObjects();9 j0 \2 M* |/ b% ]! v
swarms.buildActions();6 I) R/ z1 K1 B: k
swarms.activateIn(null).run();
/ u0 f5 l# e# s8 [3 p( S }
' E$ z1 Y R7 ^6 E. ^/ |. k6 \1 l& t, q! B2 x
} |
|