|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 a" z! G) V% r& t) W3 {: Z' G
8 _' K* h" D9 G9 a6 ?' d* T0 R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! A( M+ Y& a4 F- U6 u# S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' t, S- X4 O# s$ G# [
swarm.SignatureNotFoundException: J7 U6 T. j! `' w1 x2 v7 t
at swarm.Selector.<init>(Selector.java:76)$ K2 `6 F- T1 J% O7 V$ U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! i' V/ `* o( H, B- V at ActionGroupDemo.main(ActionGroupDemo.java:67)
( ^) h8 g6 z" o9 G. b
7 v. ?: n" `& ?- p E" z- X4 U+ _% N$ r/ ?( F. C
import swarm.objectbase.SwarmImpl;/ \/ o" j+ t/ J5 y
import swarm.objectbase.Swarm;
/ k2 Z2 S5 I5 e1 `import swarm.activity.ScheduleImpl;, e/ ~/ z8 j7 |1 r
import swarm.activity.Activity;
& S% [$ u/ P2 _3 X& mimport swarm.activity.ActionGroupImpl;: u r/ O4 b- ?( s! s
import swarm.collections.ListImpl;
+ n. w7 D* P4 Y: z4 c+ N6 `' _import swarm.defobj.Zone;
1 c3 p9 w+ i" N( Kimport swarm.Globals;
9 t* r6 z# m* N- V: dimport swarm.Selector;6 ]6 ` N' {$ {2 K" e. g! w
import swarm.activity.ActionGroup; 4 D" A6 `' o2 V! K: e, d/ ` S- y
class Agent {
/ Z; ^+ ~- w4 q. J f/ x char id;
6 Z# h! _: T/ |; R7 E
) W8 {, P! o& s: A& Z+ b Agent(char id) {2 ], f- c i+ C. ^
this.id = id;* R/ H) t) r. j5 \3 {3 S) b
}! F& k& d& a3 F0 m
' a% O+ N( Q4 h
public void agentStep() {. h5 a" T f* O# R8 ~' y
System.out.println(id + ":" + Globals.env.getCurrentTime());
# m, `, q& c$ `1 y, |3 R }+ _: t1 |$ L8 o$ h1 Q3 x. U
}
' N2 _- m: P& h2 g" D1 t7 A9 L) G$ ?6 w$ Q: ^( z7 W' q* }* Z
public class ActionGroupDemo extends SwarmImpl {
( ?4 f6 n4 g( @( ^ ScheduleImpl schedule;" j' i, _* f l+ ]
ActionGroupImpl actionGroup;
, U. `) j' N' n) ]6 { ListImpl list;
0 x3 H9 U# p5 D3 E6 X char Id = 'a';, S3 F* @; A/ P% L
* ?; o4 i: S" C: r ActionGroupDemo(Zone aZone) {/ Q( d1 S- B' M& a; V7 b0 z* V
super(aZone);. y u1 i" a. o2 h
list = new ListImpl(aZone);
; \& l2 P* [5 T( r swarmSetp();
8 M2 c1 N; h7 @6 _' z# A actionGroup = new ActionGroupImpl(aZone);2 ~/ }% U6 F5 \7 N6 j( L% C- q
schedule = new ScheduleImpl(aZone);$ N( k% d8 i4 q; z% ]
try {# x* N3 B( d( D7 x
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ I# c' o4 ]' ]' q8 Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 Y2 T7 n8 w" x% w
/ }# D `" G! U: p( | actionGroup.createActionForEach$message(list, agentSel);/ p- @6 G/ `( ^! a
actionGroup.createActionTo$message(this, swarmSel);
1 p: P: g8 m2 A' \9 w schedule.at$createAction(0, actionGroup);8 g6 H9 Q0 U( l4 x7 E/ V# X- x
schedule.at$createAction(1, actionGroup);
4 E6 [7 W: g; D: n; o& O schedule.at$createAction(2, actionGroup);/ O, ] D! _ ?" H& t7 o% X
1 ~2 F0 ?- J) F% c6 T, `
} catch (Exception e) {9 i4 p, h9 Z, k$ q% e7 R# a
e.printStackTrace(System.err);$ _7 m/ _! g$ O9 O
//System.out.println(e);8 K5 J4 c2 P# s. n$ T% D" x
System.exit(1);( H- p2 a7 |5 ?: A: a; Q
}: o6 i4 x# i9 Q: _; M
( U/ `) V1 E) l7 m1 d5 h3 x) a) L0 m/ i v
}
+ c x. i1 a6 V; x" j; o; T4 y" p2 d& ~5 A* N
private void swarmSetp() {
3 T! D, s: \# E$ l list.addLast(new Agent(Id));
" J4 I6 |; z0 J! `; m( t" J( K+ W; R Id++;6 W6 ?6 m+ M$ X* j: H: U# p Y
}
; |! x4 s8 L P' m! U
$ ]' E0 N5 f9 {# Y2 H public Activity activateIn(Swarm context) {
V6 [% K; D" E7 O( D; K' @! Z super.activateIn(context);( K3 |# |& D5 M- b* {. ?/ d' w
schedule.activateIn(this);
1 R% z: e" J8 j+ j0 k3 ]6 } G- @ return getActivity();, U1 a0 Z3 q* C1 d# ^. z
}
6 o! [! J7 `( ^8 |6 t
+ q2 v( |, t/ }* K public static void main(String[] args) {! H2 w' x$ }2 y+ s+ {8 N1 X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. U n: K, {* H, q7 M Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 D. P: P- D5 @* T" K swarms.buildObjects();
& o2 j2 G/ C& b* k9 P" g. U+ M4 S swarms.buildActions();1 o5 y2 C" D! u6 z. ?0 X* t
swarms.activateIn(null).run();' g' p. N" L" W; o* i& Q4 a
}1 c( t' T; f7 Z ]# ~, G, n! E
1 K& ~ ^. x$ E+ T S; T
} |
|