|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 N) J) b& j$ s3 N+ E& O9 z; y6 t; T4 V, m- @! i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 v" m t+ M2 P6 r- N( D$ b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 c) R: g, p. H3 }swarm.SignatureNotFoundException. i; R; k: ]! r# S" W) A7 T" q
at swarm.Selector.<init>(Selector.java:76)/ \( g4 v c$ _* d4 w
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 S5 ^% h3 M& w# U2 w! Z8 R- W at ActionGroupDemo.main(ActionGroupDemo.java:67)
( K# l/ w, i: {7 W5 ^6 y# ^- Q* J" A$ [7 Y) \6 V7 [
* d6 m* v6 A2 N: ~4 _! n
import swarm.objectbase.SwarmImpl;
9 Q3 u& V# | Himport swarm.objectbase.Swarm;
1 q8 f. ^# ^# Y( W# t2 Rimport swarm.activity.ScheduleImpl;+ o) v0 E# a. @
import swarm.activity.Activity;( b1 q0 {7 [: l9 x
import swarm.activity.ActionGroupImpl;( ~+ X; Z6 W4 Y6 x% N9 Z7 r ~
import swarm.collections.ListImpl;
! U8 N8 z6 l1 b* y/ ]" P, w8 Qimport swarm.defobj.Zone;
" T' n; X5 O0 b v- eimport swarm.Globals;7 a& P/ x' S& w6 r" b! Q7 l
import swarm.Selector;
7 }) J' J8 c' y* n: n0 h3 kimport swarm.activity.ActionGroup; ) A; n5 i$ ^. R1 p6 m- d* C
class Agent {
1 A6 p* `+ N/ S& ? V, L5 Z4 R$ k char id;( E# {; e4 x& U4 r2 `' O/ g) @6 ^
# e: A8 }# G& J- S& \ Agent(char id) { w; t _' b: G- n8 d+ ?3 S4 Z
this.id = id;
0 [0 Q, _6 ]. _ s }# ~2 l8 ^! S* b- X1 N2 v
6 i+ G7 b. X& n2 ]. Q9 T' H4 s' l
public void agentStep() {
, V) T( n, B+ O) i# y System.out.println(id + ":" + Globals.env.getCurrentTime());3 Z8 }: v# R# b5 L2 @- l; @: ~ i4 S
}
6 x. v* ]3 j& [& `+ Y# @8 X}4 w( n! W2 W* g( [; T6 Q. ~4 q8 F
* L5 ?9 z" U* X& O
public class ActionGroupDemo extends SwarmImpl {
2 ~' |9 k2 }+ K1 ]' _5 C ScheduleImpl schedule;+ Q3 A% X% B- @4 E
ActionGroupImpl actionGroup;$ M$ S6 b- f8 [+ W
ListImpl list;( \( V2 c6 I1 w a6 M" c# f" J
char Id = 'a';6 A" \$ l" B0 p6 q8 B0 {
9 l4 m- I, y5 L$ X
ActionGroupDemo(Zone aZone) {
- k) }3 ]; s5 B# v1 H super(aZone);9 m2 s* d4 L1 F% Y$ P/ o
list = new ListImpl(aZone);9 }) s: U7 @8 z4 c
swarmSetp();
9 @' G. m7 g Q% F. k/ o+ o( `9 W actionGroup = new ActionGroupImpl(aZone);
' S0 n- x! P; M6 j) ]! I0 m8 { schedule = new ScheduleImpl(aZone);
; ]* z* `6 l u" d% I. C( L try {
+ A. c9 h! O: s Selector agentSel = new Selector(Agent.class, "agentStep", false);
) T, R$ l% F9 O; C* V D Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) z% n6 y* v, }% \* n & o- [8 U/ h" h( \
actionGroup.createActionForEach$message(list, agentSel);
+ e8 c4 }: v: U( F actionGroup.createActionTo$message(this, swarmSel);& G+ G. c c( F6 P) m
schedule.at$createAction(0, actionGroup);
* ^% F- G, [1 o3 N+ J" A: d3 B schedule.at$createAction(1, actionGroup);
' d& x8 G! T: I4 J schedule.at$createAction(2, actionGroup);
: V7 Y0 j" X/ b( |% ~" m
0 a+ p# o; @& N7 J' | } catch (Exception e) {0 c9 f& _0 [. y& q9 l1 ~# \8 i
e.printStackTrace(System.err);
+ f- b7 @0 p9 }% o1 e" _/ Z //System.out.println(e);
( F4 K6 u3 j/ A. | System.exit(1);0 g& e: M% b/ b! I6 p0 p
}
8 [6 h) t x9 p" w5 E
+ p: ~% O9 _9 ?: g: ~0 \% B( g+ M+ \
}
( J( x. X2 K1 z2 \) i
D5 m/ o% ~9 Z9 Y# R; i o private void swarmSetp() {
6 L( y* O% I h" y list.addLast(new Agent(Id));
% R) K8 e& w0 H9 g* d+ K% w Id++;
$ A3 ?1 ?$ i# k6 B }
k M; h2 W/ M8 J2 X- q2 [ l# ~' Q7 H9 W$ F9 Y* k0 X
public Activity activateIn(Swarm context) {# I3 u5 c& R- K' a* |
super.activateIn(context);
& ` E6 `6 W; U7 b, f: [ schedule.activateIn(this);: ~/ O: j+ `+ [) j6 o
return getActivity();- D' J* S+ \; R+ v
}& ]/ P2 F% Y" |0 O1 U7 ~5 X
8 J9 w8 l `$ L% L9 ~5 r; r! T public static void main(String[] args) {
8 S2 I5 x: c# \$ ` Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 D2 J: B+ N9 T+ v1 W6 B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 Z' [3 z# U' x/ d, Z swarms.buildObjects();
3 t$ U+ A4 \" k swarms.buildActions();- L0 l* v3 G3 V
swarms.activateIn(null).run();
( L; x' W* L- P( Q" H0 q! p }8 Z& a) K! |+ G; ?4 {
" M% ^' P) \9 U% `2 {} |
|