|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' R8 v! W- r# O1 s+ |! D$ q, A
/ F6 h0 O5 O, s5 {4 ~7 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 f- ]4 z3 ~ p/ N; W& m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- w0 C0 Q7 C0 ?6 n
swarm.SignatureNotFoundException
Z$ N: N0 k" `9 O' y& l! j at swarm.Selector.<init>(Selector.java:76)0 ]: A2 X7 e: y1 p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): @' G1 t7 ^# G" A7 T% F
at ActionGroupDemo.main(ActionGroupDemo.java:67)" B0 b" ^0 R& b: g; {
/ D. r) L& x- K- y" m
7 g& a, ~# Q$ Timport swarm.objectbase.SwarmImpl;' N0 a3 Z {* r: U) ~1 Z7 s2 ?- m
import swarm.objectbase.Swarm;
$ l% v; T( n" Aimport swarm.activity.ScheduleImpl;
$ m2 K/ \# K" o2 R+ r+ Jimport swarm.activity.Activity;) [' P) w. i x i+ z
import swarm.activity.ActionGroupImpl;' \- C2 I C+ x% j+ z6 a
import swarm.collections.ListImpl;3 |$ P8 _! {0 w6 r" g& _' X* _1 U9 k
import swarm.defobj.Zone;
g3 b- e4 H4 \+ l1 P4 M1 |' oimport swarm.Globals;
+ {% A% ], B/ dimport swarm.Selector;0 v O. E {1 _0 x' h! j6 E: i4 y
import swarm.activity.ActionGroup; ( j. ?. R7 X" k2 X9 g
class Agent {0 [9 d$ X. ]6 [/ F7 V+ ^# V
char id;; r- p+ {' ~8 D# J2 l6 {
9 D. p. i6 |) A4 ^9 B$ s. h f Agent(char id) {1 t2 |' G& L* P+ G! n
this.id = id;5 w9 c/ i* g8 K3 F. A) z; I X
}9 z3 s/ \' `- g$ V: a$ p" Z. D# F
) I& Q* w7 T6 I. }/ _
public void agentStep() {
" a1 M# |. n( d# C6 s& x0 y7 a System.out.println(id + ":" + Globals.env.getCurrentTime());' C" ^2 z$ H0 ?% V
}
7 @$ z. B' H1 Y}
' z4 D$ W' E" O; }& V+ O" ?9 j! D+ l* a [: b- ?
public class ActionGroupDemo extends SwarmImpl {
6 R) m, h1 q4 y! l6 m7 t$ n ScheduleImpl schedule;
/ q# G( V& L5 X+ O7 ~. e7 k ActionGroupImpl actionGroup;8 n" f$ V: @4 D" Q# a" I: N
ListImpl list;3 \( f+ B9 Q* P4 @! j: q C: N
char Id = 'a';# |3 ?- J* K0 x/ \" b' ?
/ v& z f9 e$ ?! |; w3 X- K: E ActionGroupDemo(Zone aZone) {* |. f: F9 S2 m! W
super(aZone);
; J7 n1 d! ]& P list = new ListImpl(aZone);. T! c3 b* c6 p4 H4 U7 F( x
swarmSetp();3 c; U5 c, ]+ v7 M. k
actionGroup = new ActionGroupImpl(aZone);& j r/ g' q1 r
schedule = new ScheduleImpl(aZone);
* B$ D9 J. q0 o6 v5 ~: f9 Z ` try {( K: F! c# K! P7 V' a% m
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( L+ H7 A( J& \5 I% q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 B3 q# ^. |+ i- o
& ? s2 ?2 Z& P7 e& V
actionGroup.createActionForEach$message(list, agentSel);8 Y6 V. E$ Q1 e3 P7 _
actionGroup.createActionTo$message(this, swarmSel);% _& }# O0 Y- w: p# K0 L
schedule.at$createAction(0, actionGroup);( |# @: A7 l- }2 t' U
schedule.at$createAction(1, actionGroup);# j* F0 x2 K* v' y/ W
schedule.at$createAction(2, actionGroup);
8 ~* o" z6 E Z
5 @+ B0 S F' {/ P" S, x' M* v8 y } catch (Exception e) {
& ^2 c1 o1 j0 i e.printStackTrace(System.err);
0 d1 ]. H+ ?( x. h8 g //System.out.println(e);1 y; y* i3 Y& g0 m
System.exit(1);
: j& f/ `4 q+ i( q }
2 _3 {- R% ^( ?9 Q
% N7 ?2 _) @! e' \- @7 a0 I- |+ U/ }# V4 w: w
}. Q- E7 }8 B9 f2 h ^8 y
) }7 p3 P* N3 }) H5 d
private void swarmSetp() {
' A+ c4 b* \0 v' N; D; ~1 T! D list.addLast(new Agent(Id));) n: L! y( G5 C
Id++;
% ^2 z0 S% z6 h9 D, z" a }, S0 |# V0 i7 [% g" t2 s
4 ~! r% i1 ?- [" b8 p1 P1 x
public Activity activateIn(Swarm context) {
/ _% i, |9 O( q2 v- J8 _: U) y super.activateIn(context);7 g" A$ E# q" |
schedule.activateIn(this);
; p! `, o; k* g& w; ^* i return getActivity();1 r- ]" M% `; q# r r* w
}4 h8 ~7 i! D$ `$ ?! d/ t
- r$ k4 g- K6 K/ g public static void main(String[] args) {1 _( W Y1 l9 `& a0 J( o- m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! [2 {: z8 C) x+ r. F: O: x9 \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, _: D8 Q9 x" u2 R% B$ C swarms.buildObjects();
/ `8 x' F, v5 C i, ~8 S( D swarms.buildActions();
* r+ C: b' C& P7 A1 N2 I6 q swarms.activateIn(null).run();2 r0 k! _, U% W0 l) y$ ~
}
/ @% {' Q) D* L! i- j+ O# ^0 n% O0 c. X) G) u1 Z
} |
|