|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# n+ e1 L0 i0 d5 P
: B. ?: C+ w; [ Q7 [: w$ [& Z4 O9 c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" s8 y. u7 X& c6 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- |* u: k9 k2 v3 U6 z- [7 mswarm.SignatureNotFoundException9 `. y& ~5 z1 [* e* R3 p( z
at swarm.Selector.<init>(Selector.java:76)
$ m4 a1 O) s0 a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% e% u( G4 H4 ]6 ^" [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: E& q6 p) k8 H! J' f
/ l1 y/ @+ r9 L" f3 I7 y1 V) g! l
: C! O" P# _0 Z3 Qimport swarm.objectbase.SwarmImpl;% @% L+ e3 E1 o8 f! z3 V$ S
import swarm.objectbase.Swarm;5 s8 P% r, n$ W
import swarm.activity.ScheduleImpl;
) a( `8 R. t V. himport swarm.activity.Activity;% C* ^) {, @# z
import swarm.activity.ActionGroupImpl;4 ]. R+ j) y2 x
import swarm.collections.ListImpl;. {3 {2 V" D" Q* }5 J; n
import swarm.defobj.Zone; / e6 e. G4 Z. J, e3 X
import swarm.Globals;( G9 c: i3 s5 Z& z) S& Q) } r
import swarm.Selector;
. }# Q' V* }; t# jimport swarm.activity.ActionGroup;
& I, L3 Q! T, J }7 F `# K }class Agent {
- e" Q+ L. f6 U. `) z. x/ D) h char id;% X3 |3 {8 S* t7 w3 x. l" c+ c
' g' j& z$ T* c' J Agent(char id) {
, g9 X% _+ g4 w' ]# t this.id = id;
6 [4 ^4 n5 q( p# b ?* b }
& f( x" m- I0 S
0 p1 z1 D+ I( a, m3 V public void agentStep() {
+ B J8 o; w& c& J System.out.println(id + ":" + Globals.env.getCurrentTime()); r l' ]7 ]! c7 j9 H% B# W3 r
}
7 u/ C0 v4 Y# E* m& Z}
2 X# u# o5 i" v. g/ ^, e: c
0 q' T# b' [+ V6 upublic class ActionGroupDemo extends SwarmImpl {
2 x# s' u: B$ N# M ScheduleImpl schedule;4 h$ ~. r5 h; E; k& Z9 M5 J" E A
ActionGroupImpl actionGroup;: `$ j9 ?( Y! U
ListImpl list;% T Z( d/ u# y* @1 G0 a5 b: [
char Id = 'a';3 ]( p9 m: F) i U# l7 M; A# B/ l @
' }( P# s/ _' e ActionGroupDemo(Zone aZone) {" A8 Q( |/ D1 W% v( P" i# S
super(aZone);' ~9 \; X" Y, X" f6 `! j9 t& P
list = new ListImpl(aZone);
' t" k: ^. E Z U& H( f' c' K7 @1 @ swarmSetp();
5 Z7 m% }* x2 a; x) C1 d actionGroup = new ActionGroupImpl(aZone);
, p# A4 @1 R4 @+ G7 `* N" s& x schedule = new ScheduleImpl(aZone);
1 ?+ r2 ~& I8 \9 H! M7 E- }2 X1 [ try {
( A- q0 J1 f1 Y. O5 W Selector agentSel = new Selector(Agent.class, "agentStep", false);
( y. C9 a" }/ v* Z w6 ~& ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( e3 g( ^9 o7 R) V
- |/ Q6 r$ @( w4 w
actionGroup.createActionForEach$message(list, agentSel);
- _8 M6 v, M; N' O" ~) U actionGroup.createActionTo$message(this, swarmSel);& f4 M( B% x' e+ i
schedule.at$createAction(0, actionGroup);6 ?! {/ p; k/ V7 ~! ~3 Q2 f; ~4 Y: m
schedule.at$createAction(1, actionGroup);
8 W' Y$ p& c& C- d8 g schedule.at$createAction(2, actionGroup);
! c( P/ M: a# f7 ]# F$ A, _+ l; ]! C) i0 ?5 u# ]
} catch (Exception e) {/ S$ B$ e- L# ] r8 G5 W
e.printStackTrace(System.err);3 t! ^- c2 O+ D4 R- E# q3 |
//System.out.println(e);
; I/ G) `6 p. T4 t$ R( e System.exit(1);
6 u( h9 I& i2 I3 _& c }
, z' R& j8 N: t8 b# m5 b$ W& F! E; R: f5 C& C- ]% L9 T3 Q% w) R/ s
# s* B* m0 A, |1 g }. W" O3 c1 _1 K& J+ b8 ^
! \3 ^5 z7 ^# r. d- L0 `2 s( b) ^0 V3 N
private void swarmSetp() {
0 e1 y$ c, a3 v f* u5 P' X list.addLast(new Agent(Id));
& ^! m: ]' t+ j Q5 _7 f8 k+ O2 d Id++;
+ A/ w' W( G j1 q- B$ o7 G }5 F, I8 ]" w7 e3 c) t% l
5 S8 ?0 \7 ^( L6 E+ X& h, r7 ~- n public Activity activateIn(Swarm context) {' n' u0 ?( y$ p$ ^! Y9 H- e+ b) |
super.activateIn(context);
& N- \( R5 a6 t- r0 [ schedule.activateIn(this);
& f$ Z4 w$ D8 B( M return getActivity();
. z' g5 e+ V( Q, y* k }
, ?; g {1 ^: \- ~3 G* `( h# [7 u% Z6 P" M+ _; p
public static void main(String[] args) {. |5 {% l& v+ H- k/ l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. U H$ b6 J% r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: q5 f4 Y9 N$ k/ ?2 ]
swarms.buildObjects();
. x" z0 S; W& L swarms.buildActions();
- o j& b# V4 D& s swarms.activateIn(null).run();
) L1 g# |# ]: r9 | }
& J8 M6 ?1 K/ l, C2 ?0 ~. ?( p4 N3 r
( Z( F" f2 X6 v4 @( s* l% g} |
|