|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . o- Q0 m+ q& K! T9 V2 o9 p; W: }
7 h# C% e" L4 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 A* _3 X' U% p7 h5 H' s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# l- D1 r4 h' q6 z, Z% G" t) Yswarm.SignatureNotFoundException
' R$ a& s. {7 K$ D' t3 z V! G at swarm.Selector.<init>(Selector.java:76); Z( ^: ~5 W! A+ {' S# @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ I& ^! N! m; s6 }' r at ActionGroupDemo.main(ActionGroupDemo.java:67). a' Y) r! r- c0 \6 y% c- f
3 {: |+ H8 {- c1 L6 o
/ |( W& `- o0 U% o" kimport swarm.objectbase.SwarmImpl;
1 {. U" |! y6 {import swarm.objectbase.Swarm;1 Z1 U% p9 W& m% e0 r: w# W7 P
import swarm.activity.ScheduleImpl;
' w% ~* N, H: T; [0 h4 dimport swarm.activity.Activity;
, g3 o U, C @* vimport swarm.activity.ActionGroupImpl;
+ ^ L; m0 X" q+ y$ ?! Timport swarm.collections.ListImpl;! B, F* @2 i! x$ O/ s
import swarm.defobj.Zone; ' y3 @: b0 p! F( W$ ^& b ~* z- [
import swarm.Globals;
/ A5 ?3 z3 e" c: nimport swarm.Selector;
% p% t! B( q4 ~3 _import swarm.activity.ActionGroup; 8 [& f' T! S; E. s8 e& J% E
class Agent {3 _0 O e0 ~4 A1 L, Q! U$ x1 D
char id;
, s" v* ]; h/ }1 c; ?
' B: d- Y5 [: l! G; n9 s9 x Agent(char id) {+ I" }1 s6 }9 Z) D7 U
this.id = id;
2 L' ?- ^5 `) n% x8 I0 @% v }; A( H( T' Y, g1 f" h1 q% F
7 n/ c6 V2 @# F- B0 Y2 K
public void agentStep() {
6 F3 {* I4 k1 T0 A System.out.println(id + ":" + Globals.env.getCurrentTime());4 A6 [6 Y1 L3 W* o; ?3 x, d1 p
}' _4 f8 u! c" g# D! L0 I- z
}
% o4 L6 ~* Y4 g) F P$ g# Q- G1 |, U0 l# `: f
public class ActionGroupDemo extends SwarmImpl {. V2 P. O6 n r5 I1 W1 Q
ScheduleImpl schedule;- k' u2 X- j4 x8 m; l. M
ActionGroupImpl actionGroup;5 z5 m4 L: B! G& {3 t' h8 m
ListImpl list;! \: S8 L2 M/ L7 ^! y( Z
char Id = 'a';
% S, h: {4 r n7 X: u. W
+ G d* @- \$ [ ActionGroupDemo(Zone aZone) {9 D+ u* G: |2 D
super(aZone);
, q- g. o1 F' a" ]/ s list = new ListImpl(aZone);4 E$ S' }, S: E3 S' }
swarmSetp();; Z5 x. D1 w3 B7 q' T6 q# ?) w
actionGroup = new ActionGroupImpl(aZone);) V. J3 |" }( ], |6 N' U( @
schedule = new ScheduleImpl(aZone);
$ Q) r J" ?0 [0 x1 G try {8 N/ p9 n: O4 K& x
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 w6 T) o+ k: n/ v& V% f9 K- l+ b7 M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( D. S6 F0 [% R4 D , R5 k5 d) S% ^/ Z, \( \& w9 O
actionGroup.createActionForEach$message(list, agentSel);% N" Z4 c7 u# b. {/ k! e
actionGroup.createActionTo$message(this, swarmSel);8 J9 V+ s4 L8 L) x" {9 u# b
schedule.at$createAction(0, actionGroup);
" ]( | C6 O7 _7 ]( A schedule.at$createAction(1, actionGroup);$ F4 K a& s7 `+ M
schedule.at$createAction(2, actionGroup);
3 L H' Q2 M4 C8 d' U9 u2 _; {. o( L" a* K3 W5 Q
} catch (Exception e) {
6 {: D9 X0 g+ S7 |) {6 M# v e.printStackTrace(System.err);, q: _0 A2 e8 j0 t; ?, V& X7 q
//System.out.println(e);2 G) i, L0 d- U7 X- i
System.exit(1);
# S: v$ H G. V1 a0 |/ |& k' [. o }: Q p4 m/ n& I r* X7 c- [" p4 o; u
6 w9 S& b! f' Q
, x7 g0 T- \3 L( ] V0 q
}$ O; E6 G6 t5 v0 d, _5 Q; q( a. u/ K
% |/ _3 ~ v: T' |+ {
private void swarmSetp() {4 p2 d! x6 t7 P% J% ?$ K- [
list.addLast(new Agent(Id));
. t5 P2 K |% x7 B' E# o7 E Id++;
+ d; E% x7 r1 b }: X! z2 v7 z9 F8 R, B$ V; C& s- C
7 D! }( E2 f$ H; m; }; C
public Activity activateIn(Swarm context) {
7 f( C: `& H: _9 v super.activateIn(context);9 I& @ A4 R2 z e" b# D
schedule.activateIn(this);
) j" @/ U/ S0 G return getActivity();+ k' z M2 Q' _- q* P
}
# @& n8 K- X4 \" ^* e
: w5 b+ }% e( X5 V public static void main(String[] args) {
- |1 U! J: G( m4 u9 s3 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! c F' x) N4 M7 |4 R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 z1 }+ C$ B' d swarms.buildObjects();
7 j6 G Y% q( N swarms.buildActions();
5 N9 Y( N. V, ~7 a1 u( R swarms.activateIn(null).run();
+ o; D2 p4 K1 ^ q- h3 D }; k! b" w. h* S3 F* v' ^- ~0 m& m7 j
H j! E. Z/ R* d4 ]' E) ` z( |} |
|