|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: _2 y* r5 I$ q: q$ K* l
+ F& q$ o7 d) ?7 k" v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* M8 m6 h- Q# x* s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 \, |: m1 `+ h5 ?* X2 L
swarm.SignatureNotFoundException
) M( [# b3 ~- p4 n at swarm.Selector.<init>(Selector.java:76)
+ C% y6 C. x a1 E9 |9 S2 [4 [ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 ^$ S, Q4 [7 U2 M5 X) g at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 `% }' K9 [/ D- _
: X/ q8 E" {# z: P$ K6 o) J5 ?6 Q# k' Q/ Y5 \! L2 s
import swarm.objectbase.SwarmImpl;+ J" c$ |# o. U1 h1 P! O
import swarm.objectbase.Swarm;
7 y1 f4 T: N; Q6 N$ Q. w. m5 V2 Fimport swarm.activity.ScheduleImpl;
6 ]3 Z; l6 h) s H: Fimport swarm.activity.Activity;/ Z; `7 ]- O6 m! B- x
import swarm.activity.ActionGroupImpl;
8 w0 y2 S# C! zimport swarm.collections.ListImpl;: a! E, D8 e2 J* ~; C$ X5 ?0 g* |" @
import swarm.defobj.Zone; ) A$ Q: r% G" @7 ^8 r
import swarm.Globals;
6 ?/ ]6 J% L1 i2 ~' d: o% Dimport swarm.Selector;
5 K" i3 B9 P* g, m( wimport swarm.activity.ActionGroup; 9 e1 t) w3 O; Z8 `
class Agent {
, y$ s% B5 t1 @ char id;
" W& M( ~' T) p$ a X( v' y3 W& o/ `9 Y# P% Z
Agent(char id) {9 S8 }: t2 L5 L
this.id = id;
/ A' q' C6 u7 x m# G }% S8 B. H; b! O1 U( A1 ]
* w: j, R/ a) H& W$ M6 O X& i$ G2 U& n$ D public void agentStep() {2 R6 R( _& J: C; L
System.out.println(id + ":" + Globals.env.getCurrentTime());5 ^# l8 H6 R0 ]% N
}& Z9 z* g9 i7 M2 }
}
7 y7 c) E9 o+ ~% i7 p/ l) b1 |" M
/ s% G( G& I. o) W8 q. Npublic class ActionGroupDemo extends SwarmImpl {6 i9 L9 t q+ w$ j1 J! U$ n
ScheduleImpl schedule;
( }1 J, m7 x/ Y9 f+ M# j) @8 ] ActionGroupImpl actionGroup;
H/ A% f) ^+ a3 E+ l7 y ListImpl list;$ e2 P9 N" y+ s1 u3 Z% o8 x+ Q
char Id = 'a';8 s3 w i8 s! O0 n' K
; J U. ]% e- g: }5 v ActionGroupDemo(Zone aZone) {
7 @+ Z* s. b4 t5 y% M7 ?3 } super(aZone);, G& Q! [1 G' `+ _
list = new ListImpl(aZone);" L$ _, Y; K% D' f9 W& Y2 }9 D
swarmSetp();/ `. t, m2 q# j
actionGroup = new ActionGroupImpl(aZone);+ W6 L! e% z3 w
schedule = new ScheduleImpl(aZone);4 B0 d2 T6 o! O( s
try {
1 l% x/ E; [ a) B* T: q7 B Selector agentSel = new Selector(Agent.class, "agentStep", false);5 M. u( y- A- Y$ S+ x* E8 l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 G5 ?4 k5 W3 X( X3 k1 h4 }
. h# h( m; Q/ z0 ]$ d( ^% a- d0 x actionGroup.createActionForEach$message(list, agentSel);, W% b* ]7 l, X
actionGroup.createActionTo$message(this, swarmSel);' }4 E/ N6 }1 {. A& E
schedule.at$createAction(0, actionGroup);
9 M; q5 s7 x% V3 A9 I3 @: l: ~- S$ Z schedule.at$createAction(1, actionGroup);: K+ u4 b+ H! S, v+ v
schedule.at$createAction(2, actionGroup);
K- s3 r3 i2 j0 e" }, i4 y, \# t8 z+ M( V/ o& ?/ E2 W
} catch (Exception e) {
/ d' ?% c) s( [+ |" Y% q e.printStackTrace(System.err);) H1 v5 {8 {# _* I
//System.out.println(e);
: W% ~) U' n$ c$ M: ]" {' D System.exit(1); h d) c8 r1 y# x
}
( O/ j, u2 q$ R# C. N7 f$ V: Z) U% c
5 W' D0 o$ v) L4 p: O7 H" ~/ o }
, k4 S; X" t# R- |2 _" ~' g+ [
. ~. v" ^, Q! \ private void swarmSetp() {, X I9 f4 W, Y5 k7 O' N
list.addLast(new Agent(Id));
$ v& B6 J$ d! v6 O9 I r5 O Id++;! R4 Y- G' d& Z
}
/ J. a2 n) F+ c/ T. j5 q
0 {# g! e: N8 O4 Y; c* I: M# n9 Q public Activity activateIn(Swarm context) {
: U1 ?. u; {, g o super.activateIn(context);
9 I0 y3 Y6 ]$ K6 |8 I( `4 ^ schedule.activateIn(this);
( ?+ z8 K/ r9 X( H+ }1 j2 R8 P return getActivity();
( m0 W# b$ a" @ L }
) N$ q i Q+ E9 W6 {/ W
; H% M- `% |8 O* ^ public static void main(String[] args) {& ^' C$ O$ d( {, w0 c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 i, ]4 o" k0 v4 l4 o; j$ J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. H: `0 Q/ w6 I/ ~1 z2 M
swarms.buildObjects();
; m8 Y! |8 C2 d# p _ swarms.buildActions();
: e2 U/ B5 R( m3 C/ z swarms.activateIn(null).run();
+ e3 Q* d. [' y* w( a- J& i }
) w7 _' e t. B. c2 ?/ Y1 ?/ k# q5 y; W9 \9 t1 D
} |
|