|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & B* s# ~6 [4 R; c5 z- ^3 x* m0 {
: p2 B, d, A9 ?% r# y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ v% v' X' \" o+ s# Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& l5 a& p0 p5 k, p% |
swarm.SignatureNotFoundException- W; i: U2 m3 a9 N2 A& m" B
at swarm.Selector.<init>(Selector.java:76)6 d: l+ C# s$ e7 t
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 M" P( s' z9 _ Y \$ L* A
at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 a) H/ @9 o& E" m( P1 R; {
2 Z8 A+ z0 N6 q# a7 @+ ?
1 w) r8 }$ F) J) @) \3 Eimport swarm.objectbase.SwarmImpl;
8 h) N: C2 O0 C# T% Y( {import swarm.objectbase.Swarm;" @% I3 O( J' Q
import swarm.activity.ScheduleImpl;
' k+ M1 r# T" z2 d# ]import swarm.activity.Activity;6 j2 J2 |7 [4 w' M
import swarm.activity.ActionGroupImpl;
0 x; j l) g9 ~4 a* z7 q! j' K. eimport swarm.collections.ListImpl;- h6 }0 l1 Q- M F, a! `3 Y- J
import swarm.defobj.Zone; + m# {/ d, y& p6 Z
import swarm.Globals;) l+ u8 [ c* H# U2 O. M- c) e
import swarm.Selector;4 _8 s/ p9 b: @" B& Z
import swarm.activity.ActionGroup;
3 X0 T8 i5 N- F# rclass Agent {! Q4 V& C% R" b& f; ?6 e8 h; ~
char id;/ v6 m2 \6 s$ g3 ~, n' \5 Q5 j
8 L( A e! v$ c8 Y
Agent(char id) {
5 a7 w2 _4 b& M+ S0 i5 v3 ]# B this.id = id;7 o, Q$ i# Q( r/ M( y
}% p/ s/ f7 K8 ^* D: q4 V; L/ f
9 L, u g2 Y- C# o6 }' N public void agentStep() {
* ~# l6 H5 y# |4 b, Y6 f System.out.println(id + ":" + Globals.env.getCurrentTime());' S' z: N: M* l2 M7 N i' e5 B
}
! ? p/ U* O3 z4 U, H}6 B* f+ n% b' z* q
) _3 C/ Y P9 p9 opublic class ActionGroupDemo extends SwarmImpl {( [# N. n/ b/ q( D
ScheduleImpl schedule;- e- ]+ a7 {, V/ U
ActionGroupImpl actionGroup;
8 H2 E1 n$ L% r ListImpl list;
; s; H6 k. `, Q2 |& k* ~1 ? char Id = 'a';
# @& | K: M' V0 `0 p7 ^: |
$ o$ [& N9 @: m% i- u# I ActionGroupDemo(Zone aZone) {) h# ~: ]7 T; k& R
super(aZone);% M, W( v- Z4 t. G( W
list = new ListImpl(aZone);
$ }% J3 h2 G. p, W" l/ x& M swarmSetp();( q, Y) @+ S$ _1 T+ v* u# {8 X0 j
actionGroup = new ActionGroupImpl(aZone);
; @( {! ~4 a2 V/ B; |8 T schedule = new ScheduleImpl(aZone);9 x/ g, \, R$ d3 M% b2 W5 x( h, b
try {& C. X5 a; h) |6 ]% ~$ n2 ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ i; M4 J/ p- I" O1 F3 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% ^$ }! b9 s1 b9 U; E9 ? & }$ `: R0 M7 n' a a
actionGroup.createActionForEach$message(list, agentSel);
6 p" D% i( @, j9 |3 P+ B actionGroup.createActionTo$message(this, swarmSel);( P7 s. w" V. H
schedule.at$createAction(0, actionGroup);5 j" i5 d% `# C. M. M) [, u) k
schedule.at$createAction(1, actionGroup);9 s; ^5 D+ Y4 F! _4 R2 Z* n6 @
schedule.at$createAction(2, actionGroup);
' q1 m% A6 g( @0 p" K y
: E9 i) _' c( C! U4 c } catch (Exception e) { m6 p) j& c" I7 E/ c/ F6 T8 o( }9 Z
e.printStackTrace(System.err);
% Y( _: V; c# y" Z9 o% p //System.out.println(e);, @4 a) V2 x7 y; B4 c- x0 n
System.exit(1);
, O' W& D+ f c- b7 k0 i. p. U }" y3 K+ c+ i4 N4 O- q3 O1 t
' ?' ]* r, P8 M5 C& _
, v- E& _1 d! `2 ^" x2 l$ F7 p3 P }
' w7 t7 i1 t% W
+ o0 c8 g0 K; d [0 `. Q3 f private void swarmSetp() {5 q" T) V4 S% h3 A
list.addLast(new Agent(Id));
: x0 |' \# @8 g Id++;
& M6 s* h9 y! `0 { j; V: u }8 N4 E2 L1 V s6 [% C$ c( |
3 A* r- ?% [ z$ _4 A
public Activity activateIn(Swarm context) {
+ G4 d8 Z& J% e1 n super.activateIn(context);8 Q" a+ k$ S0 m- M1 @; x
schedule.activateIn(this);
8 k y1 l0 y9 w: F return getActivity();8 s: G# b5 Y! c4 Z5 {
}# T+ n) v( W9 r; r+ j( q% {
7 t) Y8 A) n+ ]' Y# O4 q
public static void main(String[] args) {
% {3 ]' b) a6 B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- r9 o4 d9 X% z6 z9 r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. z3 s8 K* G( q7 e# f+ d. s$ [ swarms.buildObjects();+ V; _5 [9 `$ z2 e% ~# C7 b
swarms.buildActions();+ N0 X* n8 W8 \$ s; ^+ ]
swarms.activateIn(null).run();+ ^1 s- e, I( j5 B* O! W! K- E J
}
5 M7 l8 F7 c, L( q; H8 O
, e% v$ J* q# M7 x} |
|