|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 ?; U4 `* b# X* K8 l# B" x. g- }7 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! ~$ g' Z3 O a5 i& ~1 Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( X6 i7 f% J/ E* ^' x1 T. M
swarm.SignatureNotFoundException; ~7 J" E" z+ h7 l1 i
at swarm.Selector.<init>(Selector.java:76)$ U2 x% S, A+ ]& e' H7 e; T- Z: u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! Q1 |( T1 K; b1 c4 |7 q& ~
at ActionGroupDemo.main(ActionGroupDemo.java:67)# _ Y. F; W! d$ ?+ B' _
9 B \/ h! c( g) E3 f
5 r- H: y0 x3 T4 E) r5 o4 i7 Limport swarm.objectbase.SwarmImpl;$ \2 K4 o% X% w
import swarm.objectbase.Swarm;
& E% N W, J$ o" g2 yimport swarm.activity.ScheduleImpl;' N8 Z! M3 c/ x6 L6 q
import swarm.activity.Activity;
# k* n3 {% ?' U! p& Nimport swarm.activity.ActionGroupImpl;
! E* W, n4 J& Z4 U, @import swarm.collections.ListImpl;
: }! h' r, i6 G# h3 _7 kimport swarm.defobj.Zone; 7 _8 e/ S: u' T8 [% L
import swarm.Globals;3 `. O( C; M* d; }7 B. y k+ C( ?5 h, k
import swarm.Selector;
$ j# N( A" _1 k* f) [import swarm.activity.ActionGroup; 4 m; t2 Z) y+ g# g0 U/ {
class Agent {0 `0 Q1 a: y( _4 Z
char id;3 ~9 d2 C4 ]: Q' R6 v
+ H& M+ y( n5 t/ X9 z5 [
Agent(char id) {; B' E0 R) P' g7 t% U; W
this.id = id;5 j5 r% ~! z( i( z, B1 f
} f! d+ f$ R. p: o( D8 `1 H( r( x
S* p* q8 B% M# i
public void agentStep() {
3 |: @' t5 G- ~ System.out.println(id + ":" + Globals.env.getCurrentTime());. A; N; ~' s& q0 \; ?6 w& R! ]3 l, U
}% Q/ ^* O6 Y1 p# b' Y
}% t! Q& P" q3 C' B# V0 T& V
+ r: k. Z! {2 T; Dpublic class ActionGroupDemo extends SwarmImpl {& z( _- \9 ]. P% }' w
ScheduleImpl schedule;
3 z; L7 `, q$ G8 o) o# N; b ActionGroupImpl actionGroup;
( _6 y/ I: I* S* s, h ListImpl list;
( p$ |+ |7 |* i) T; K char Id = 'a';+ f2 R* C. f4 p* y0 O# s: P
3 \: I, f- Z7 d) S# g ActionGroupDemo(Zone aZone) {& ?6 K! z. l) @7 C' z
super(aZone);( m. B& U" ^( j$ d7 n
list = new ListImpl(aZone);
4 ~! T7 ? R7 _/ h# H: g swarmSetp();& {- A2 ?* c g4 a
actionGroup = new ActionGroupImpl(aZone);
3 T$ }- l" h7 H6 Z. t2 z/ S schedule = new ScheduleImpl(aZone);0 A" J7 k: W3 q/ w6 m; W
try {3 `. V9 p( u4 Y/ v. I$ Z K0 m: Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);( r5 q% ]' E9 B* {2 [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 W) X, j8 O5 W( J- ~1 m % C* o6 t: c7 T! \8 i! j
actionGroup.createActionForEach$message(list, agentSel);' L4 b3 W) v4 v* b9 M
actionGroup.createActionTo$message(this, swarmSel);
, s* M1 k3 i7 P+ M* c# |( U, P% t" ? schedule.at$createAction(0, actionGroup);
, o; s0 g- h/ ?. h schedule.at$createAction(1, actionGroup);! p1 C+ C" ?8 R" L
schedule.at$createAction(2, actionGroup);
* F$ H0 z; m/ H% h% d/ E' O6 L' ?4 j7 r
} catch (Exception e) {2 v5 y& }! h7 {
e.printStackTrace(System.err);, c* z" ^1 q( r6 |
//System.out.println(e);. _% j/ X3 n* ~1 s; c% ?3 C. T
System.exit(1);
$ I) K9 }2 X& H& v7 B) g/ E }
1 a7 x" k# M" q$ a1 \$ c& R7 v: M( _. m, K# m
( y l2 L0 f$ N* S8 X+ _ }& f7 _: o' E$ C$ F* c" m4 E9 s
1 Y+ K; e% _2 t0 X+ j7 e$ E
private void swarmSetp() {
$ p9 z1 n* o2 {8 D list.addLast(new Agent(Id));% U/ }$ ~0 n$ [. s& R0 ]
Id++;9 L3 {$ S9 u5 i7 o
}
0 p4 V3 S3 S& b. g7 S {7 F$ l: ?5 j4 J. Y8 t5 J3 T$ Q
public Activity activateIn(Swarm context) {9 T$ j$ ^- @( X! @
super.activateIn(context);5 X; y( @) S y( P9 L c. q! F
schedule.activateIn(this);5 ~- l$ e. Y/ H' R
return getActivity();
* N+ D7 b0 e5 H, w+ A2 b, V" a }
- ]' L; Y& [# V1 n
9 X4 }7 G9 ]/ j9 A. T. }/ Y public static void main(String[] args) {
1 R8 R* R p* Y: D. f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! W# a! t# j7 F: W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* F# ]) X0 k. E( L& Q! j
swarms.buildObjects();
/ `8 H! G: {9 }( _ swarms.buildActions();
: R% l9 @) z9 O swarms.activateIn(null).run();; j/ ^3 T A9 d7 L }
}
9 |7 m! L: D( P7 i4 I/ P
& j/ [' w7 ]7 H! \2 E( B} |
|