|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % c" O" K1 z: u% J/ V ^
8 N- ~& N& H' Q6 n( N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" g0 q% c7 T" c$ e7 s+ m, B/ I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! G: v" K Q! x( J: I4 d2 ~0 qswarm.SignatureNotFoundException( j" E5 q7 W! d$ ]9 @" |
at swarm.Selector.<init>(Selector.java:76)
5 v: B! C1 Y- e at ActionGroupDemo.<init>(ActionGroupDemo.java:37). m) ]& M( ?% j2 y
at ActionGroupDemo.main(ActionGroupDemo.java:67) c* o3 w0 |' [! k
: Z4 v& F! N% j) e
( |4 N4 X# r. h& ^; f
import swarm.objectbase.SwarmImpl;
+ W9 ]' s' D- W# i: Y2 ?' |import swarm.objectbase.Swarm;! Y( I# d% t# ]
import swarm.activity.ScheduleImpl;$ a/ P5 K6 ]/ h% d) J- [1 n
import swarm.activity.Activity;
/ I- [7 A8 H# a; K& l$ bimport swarm.activity.ActionGroupImpl;$ L/ ?( @4 O. F
import swarm.collections.ListImpl;
: Z0 O% @7 ], L( {$ fimport swarm.defobj.Zone; ) i' ?/ y/ |: Y1 G+ l
import swarm.Globals;
) j- w( C3 P' A1 ~+ Iimport swarm.Selector;; W& |- S2 h B1 X' e+ `
import swarm.activity.ActionGroup; - L& ]3 N3 L) f3 O: y$ L5 C5 ?% t
class Agent {% g9 c+ ^' T" Y8 j5 p& j
char id;
8 ]9 C5 ^6 S8 ^, ]# Y
- N# W, D, _ _; y; v% V8 O8 ]5 O$ d0 V Agent(char id) {
2 [4 P% I, t* i this.id = id;
, }# s3 C7 q/ P5 a9 @6 \, a }
) h) r- z! N% T. g4 i1 S; A6 F
" p/ u/ ?" ~. y, e" b# L, T public void agentStep() {$ g2 E1 j0 X" ?/ E$ l# F
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ i3 c. R. T; N& j! M: n9 ` }
& P, d* ^) ?5 J! ?3 {}2 F; w3 y9 a1 X" ^! t. L
9 k; s1 `5 W7 e) D' N7 gpublic class ActionGroupDemo extends SwarmImpl {
- V1 z2 z+ O1 o1 ~6 Q4 X+ ?' Y+ n ScheduleImpl schedule;
/ J4 s* O' E$ P3 E6 i5 m; D ActionGroupImpl actionGroup;+ c9 w% d- D+ z- }& X: V
ListImpl list;
' z6 r8 [& c# N: O) J$ U; B8 Y char Id = 'a';& x5 k: c& [2 ?" O3 O& Q# E
% s% {$ P: T9 l- O) { ActionGroupDemo(Zone aZone) {
- \* O7 _+ m8 Q! N super(aZone);
K0 g+ `0 a B8 R list = new ListImpl(aZone);
; b& P% {4 Z1 |# R8 I swarmSetp();
6 ~/ G0 [3 l' E! F' \ O+ b5 N actionGroup = new ActionGroupImpl(aZone);
9 D* @% b6 A+ L schedule = new ScheduleImpl(aZone);
2 x! P: D/ [$ J5 |3 V! _ try {7 D5 P( P2 O; w
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 ?5 F! X8 J. \7 _# O& e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 {% s/ w( E. l
# S: H/ E- ?7 a& r+ N7 u# g5 Y* ~
actionGroup.createActionForEach$message(list, agentSel);
1 ?- W) s5 ]+ V actionGroup.createActionTo$message(this, swarmSel);, z, H/ |! v6 p$ @. R
schedule.at$createAction(0, actionGroup);
1 T9 E6 j; N$ c8 O/ t3 U schedule.at$createAction(1, actionGroup);3 m6 y- {- d5 B' E" F K/ k
schedule.at$createAction(2, actionGroup);" j1 F0 E: ]3 h* q1 H2 S9 i+ q: Y
% v+ r+ q& o5 R# x! t } catch (Exception e) {. t+ l2 \4 V, K O9 i2 j
e.printStackTrace(System.err);
5 a+ k& r) S% t; o9 g //System.out.println(e);% j: K) v/ K4 K$ l. \; H7 p
System.exit(1);
& ^4 K& T h) ]7 r }
+ n! B2 I/ E4 }% `) G# b0 W% ^8 d# _ Z$ x
w: Q3 }& o; y0 I7 K
}
/ l4 W/ l5 [& x; | a
& R8 G& I$ T+ v4 ~8 U& y+ B private void swarmSetp() {0 N) ~! ~% \6 R8 W
list.addLast(new Agent(Id));& G) G6 i$ N j) o% F
Id++;/ T" ^! V' P' R1 J7 s
}" L( ~' b* \$ ^ T
0 A# k: F9 ^ m% I
public Activity activateIn(Swarm context) {
0 \6 P' {; M% c- ? super.activateIn(context);8 d" y; M5 Y0 Y/ X1 u' a
schedule.activateIn(this);7 U4 c y1 r# U$ M4 \# f
return getActivity();; {% h- i3 C" j
}! U9 E& S2 s) N" s2 B! S2 N7 i
8 {* [6 Y$ G, H9 K, H public static void main(String[] args) {
: c6 Y7 O( d' F, S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 l& M7 z1 G7 P4 x, O1 x w- Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 D0 s3 f# a% k! g8 d( G I# p swarms.buildObjects();
! B) l X4 T, U ?, J k5 U ] swarms.buildActions();
7 A5 u( z- R! m1 G3 J8 J swarms.activateIn(null).run();0 e$ V" c+ F, A+ `
}
1 t% r5 K+ i: {, F; H, X5 C
$ |& b- p. v) L" h' \} |
|