|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % Q% q: N A$ j' X5 W9 p
$ x9 l. w, J8 p& z0 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( \! Y, C2 D) o2 k0 ^0 s4 @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: V% H/ z# z, \0 _- @6 Fswarm.SignatureNotFoundException( Q! M( F3 P; ~7 T( B/ e
at swarm.Selector.<init>(Selector.java:76)5 F y: W l* F9 m6 _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: f* G) F' C- z1 \ at ActionGroupDemo.main(ActionGroupDemo.java:67)
, G$ a8 i1 m2 k) w
6 k1 \$ c% G5 Q0 e4 w
5 Z% e' Y$ M. A3 `import swarm.objectbase.SwarmImpl;& n& L* O& Z0 `6 `- A# F2 |2 x
import swarm.objectbase.Swarm;
2 d6 F1 ~: [7 p: T1 cimport swarm.activity.ScheduleImpl;7 R, W0 v5 X0 \! O' U
import swarm.activity.Activity;* a+ A4 x2 g0 Y3 l5 n
import swarm.activity.ActionGroupImpl;: C/ S7 j& S( o! Q
import swarm.collections.ListImpl;
. y0 Y7 W/ n9 r6 j" }5 Cimport swarm.defobj.Zone; / w- v3 \6 X+ }
import swarm.Globals;: h7 g8 H; I: o1 v& _
import swarm.Selector;3 B4 U f X* \0 G: ]
import swarm.activity.ActionGroup;
' r# I7 w- f& ^3 Iclass Agent {
5 P# D$ w* c- D( I char id;
% ~; l1 ] ]$ A' Q1 |3 _& f
2 d: S, G; l1 C6 ]$ y. v Agent(char id) { e; f, q9 H5 c* m
this.id = id;( C7 b- n3 ]8 O% L$ E# @
}0 G% Q8 f3 j- a9 K/ Q8 h+ D
/ h/ ^% |- M0 ^+ U7 C' V/ I' ^ public void agentStep() {
4 j6 P; X" n7 j% o! S$ q( C9 c System.out.println(id + ":" + Globals.env.getCurrentTime());
, g* M8 r: z4 H, _% a" x( J }
0 y9 e* n9 C- ^4 d# m: \% M}
" n' {+ ?1 w8 c4 } p* _% v7 F
, U, i! |) u K3 Jpublic class ActionGroupDemo extends SwarmImpl {/ r+ e" b/ K$ j; A5 |8 Z8 ~
ScheduleImpl schedule;
" O8 ~8 u. D# c; U5 M6 H& y [8 L ActionGroupImpl actionGroup;& v5 U+ G1 Q$ r# f* O; e" B
ListImpl list;
8 |, `" _7 }5 K! G8 l( O char Id = 'a';
. K9 s. h6 _/ u8 L: v3 [
/ d7 q( {4 w( {8 }, p3 o ActionGroupDemo(Zone aZone) {4 t; j" {2 E! U. u/ i& w3 a" ]( C
super(aZone);. [% r) t' C* d) D0 ?# ?
list = new ListImpl(aZone);9 T V2 g i% N
swarmSetp();
' y' z8 \- M* \& }: J) L* Y actionGroup = new ActionGroupImpl(aZone);. [/ E( o% g+ \/ y! f# a$ R
schedule = new ScheduleImpl(aZone);
6 ]$ b c4 r6 G" b) u. l) d. M/ r try {
- O% i) |: E' ]: j8 Z" G Selector agentSel = new Selector(Agent.class, "agentStep", false);: j7 e* U+ h6 n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) w+ ?7 q. a; p( n! a a7 O; U
7 {0 v) F5 u" E$ J* w/ A& o actionGroup.createActionForEach$message(list, agentSel);
3 _/ Y' D% u) ^% G% t; S2 e0 j actionGroup.createActionTo$message(this, swarmSel);$ f, E6 I2 {7 G$ a' I* i
schedule.at$createAction(0, actionGroup);8 X* x% d' K- ~2 I. K
schedule.at$createAction(1, actionGroup);
7 W# T$ A4 ^, _3 C9 ]% N schedule.at$createAction(2, actionGroup);8 ]# T' t) h" H! M* f# ^3 {
* O, \% r9 L$ R0 k/ b# \% m } catch (Exception e) {$ {% Q7 Q" J7 i
e.printStackTrace(System.err);( _" q$ Q; H6 C) u5 A) c, M
//System.out.println(e);
6 ]7 P& r4 {5 @; t# N4 W System.exit(1);
t2 F1 h& H) i }6 Q9 \* {3 U( F* }
" F, Z5 M) a* x: Y, k
- }2 x) r4 B. t, e* [ }) e% J0 h: P9 X! z F$ Z
S6 M: k& t9 |5 f; K- ~1 ~# t: S private void swarmSetp() {
9 Y9 P, ~& b( H* ?7 \ list.addLast(new Agent(Id));
; p5 P1 c6 Z; v% W V Id++;# j( f5 Z: v& D3 [& Q1 X
}
" Z7 u/ j. h/ \" Q$ z- J. O$ @0 X& M( j/ q: x( ~7 Z' L
public Activity activateIn(Swarm context) {
* P" h1 a- h. h; V9 n8 B super.activateIn(context);
9 W N' x/ X m# K schedule.activateIn(this);! L9 }& b0 @: P7 q
return getActivity();
4 O: v# D! w! J0 U! c4 g* \ J }0 z) k5 A- l) E Z# w" Z- U4 m
4 I" O# X" a9 Q5 G% ^ public static void main(String[] args) {6 K8 K3 ]! y# e8 i1 e! K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ A1 ~. n' [+ F4 `% } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. g8 w3 ~: W" H/ h |
swarms.buildObjects();
5 k, N: S7 Y4 O! t; ? swarms.buildActions();
9 ^' a% [1 a- y7 Y& i+ T% G swarms.activateIn(null).run();% V$ p1 M& T# W
}
$ }" _' d2 l. s }- ]* s/ B7 l, f
3 U# ?% ]2 X- K7 n} |
|