|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ w2 D; W& v9 P: \7 s% y6 r, X
; q0 m+ E. E6 n9 }8 p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: J5 t6 G, A B" U L* W0 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 V0 y7 t: r1 F7 t& S3 }
swarm.SignatureNotFoundException2 s$ v k' w& ^6 a& z
at swarm.Selector.<init>(Selector.java:76)7 K- W7 c2 {& H8 T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" c! d% \$ f% E( M5 K
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% ~" [6 O% V0 [) o5 {
$ I; l: c# h' e$ v: o1 l
% j0 |. Z/ |8 ]) himport swarm.objectbase.SwarmImpl;
* w9 ~4 u" l6 M1 [import swarm.objectbase.Swarm;8 }" g3 y! F; f$ U2 ~! h
import swarm.activity.ScheduleImpl;( D5 [5 b' f' N
import swarm.activity.Activity;
6 \. H1 D% x M' r b. O7 K( |: simport swarm.activity.ActionGroupImpl;
5 i8 `% d4 Q: [1 Q; F5 Qimport swarm.collections.ListImpl;
' P/ c# Y0 S0 H L9 L; simport swarm.defobj.Zone;
# H# z$ i8 `$ m. `3 F% R# Timport swarm.Globals;% z7 Y. b- x% Q! c4 R3 ^
import swarm.Selector;. k% w' O' |% G& W, P z
import swarm.activity.ActionGroup;
- p5 o6 ]3 Q+ ~/ k) Wclass Agent {
2 z y$ X1 s1 x( s! E/ H' H char id;$ @* {9 p. l6 V7 `' S) S# Y6 Q. o
/ r1 ?, [# C/ Q d2 G1 O, a Agent(char id) {& o( c; R. A G7 x1 S3 F1 I
this.id = id;
. Y5 g; d" O8 Y0 q; G( l) D+ r3 X }! }! }4 R& P9 ~7 ]2 ^
1 i0 {9 b& ]% o$ z2 U9 b
public void agentStep() {! m# r6 J5 k: v: m# g
System.out.println(id + ":" + Globals.env.getCurrentTime());% A- f* A6 w! v R" v
}5 A# i4 e- U* Y; J
}" X( u! H) o7 X7 ?& a
! z9 g3 ?& G* g. c3 a& L
public class ActionGroupDemo extends SwarmImpl {
1 G2 N f- u& ?; N+ N! B9 Z ScheduleImpl schedule;8 v6 s% }+ Z* l" W4 a0 B4 n$ ]+ y
ActionGroupImpl actionGroup;3 x) o2 R. ?. U8 F
ListImpl list;: Z8 C& X& t; Q& \
char Id = 'a';
6 C9 C* X2 K0 i* Z1 R& U! b
8 M, O) _6 o& w' ` V ActionGroupDemo(Zone aZone) {, p1 ^) i1 u6 m5 j" g
super(aZone);
3 _% K0 ]/ u5 D c list = new ListImpl(aZone);# B; j. c/ v: X& c7 _1 I
swarmSetp();
1 `; C# |4 C9 m! C actionGroup = new ActionGroupImpl(aZone);3 f( U6 }6 P1 y
schedule = new ScheduleImpl(aZone);: r6 o- r) p, D8 _+ L
try {7 f- z' |, U, L6 Y2 r. A
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 `, x+ M8 t" h$ `- J. u# } Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! ^, Q' Q& \7 }+ r8 j. a6 W! \) j
, r6 D7 p5 A+ o% q actionGroup.createActionForEach$message(list, agentSel);
( J: z+ w6 C1 ?5 @+ E actionGroup.createActionTo$message(this, swarmSel);7 ~; q: u2 z) X6 T6 E' Y
schedule.at$createAction(0, actionGroup);$ \, [& `, m% V; K% K% ^, \
schedule.at$createAction(1, actionGroup);
0 |- B+ o3 R5 E: v' f& |3 |6 q schedule.at$createAction(2, actionGroup);
$ t1 W5 p( t6 I8 b1 z1 H+ I( w3 c" Y6 n
} catch (Exception e) {
3 {& S5 n! S5 E6 \4 u/ B0 I( j8 g e.printStackTrace(System.err);' p, Y* x$ h8 o) v$ _3 p# ]+ d
//System.out.println(e);
$ i4 H7 F" }, j9 T System.exit(1);
4 v% V( i/ t; z- M. b( i }
$ j4 Q4 v' j8 t8 O( L4 S4 h9 ^9 m" A U1 p0 k3 Q
1 M* |* f' h9 b" Y1 Z }
* |8 v2 S. _0 T% T, _
9 U% ^6 K/ C7 x& B2 Q1 q private void swarmSetp() {* v) @: T# Z6 E* y4 ?6 a4 L" O
list.addLast(new Agent(Id));2 R5 R" V/ w7 @
Id++;
( D1 g5 e( T1 |- P/ x0 ^, n }$ S1 I, E8 [# S5 h8 O/ y
$ P3 w) Z, f" c" F, S5 B" C public Activity activateIn(Swarm context) {
/ [( n; B; r$ \' C) P2 i super.activateIn(context);
: I/ ?. b" D# N& \ schedule.activateIn(this);( m! h8 c- c0 y+ W) n6 X3 Z
return getActivity();9 S$ R: ^) h& t' D
}
- W; K) l4 l# L/ t3 H$ s/ K0 g8 l! s. N
) Z3 E. ]# u4 Y; r public static void main(String[] args) {! `/ L: B# q4 S' E- Y# v( J i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 ^0 v7 T% y+ @+ G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 Q, {" a0 ~8 l+ ?; b$ S
swarms.buildObjects();
9 W2 _! P6 p5 B7 ]" E swarms.buildActions();
, }; R3 |( t: f. T swarms.activateIn(null).run();; Q& j1 H# I4 e" {0 f# h' M
}
0 P* T* I" l/ N1 A
1 f2 f; R3 u: i1 D O. I} |
|