|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% B- A# V% f% Q* a# T4 ?9 s( x
# y9 M: k3 V7 J. K8 O, ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. M7 g+ Y# ]3 N; f; d4 K0 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' X* R! j2 B- b0 x" k, I3 a! G* K
swarm.SignatureNotFoundException
0 C+ m$ C8 b6 f# Q at swarm.Selector.<init>(Selector.java:76)
1 f9 i* q+ `" ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 v/ l1 z7 J+ d/ n( z& l
at ActionGroupDemo.main(ActionGroupDemo.java:67)4 Q: ?7 }( M# A1 T; F
& L3 W" k' K2 w: `9 J
8 S K! p6 d. n5 U; v! H
import swarm.objectbase.SwarmImpl;
1 G/ V! X J) limport swarm.objectbase.Swarm;6 m# \- r* g$ c' d7 {
import swarm.activity.ScheduleImpl;
* F" H, Y9 Z) rimport swarm.activity.Activity;
# C, c0 z# q, O7 I3 I- b9 bimport swarm.activity.ActionGroupImpl;- X( c8 V$ Z) O. T I6 {# X! p8 j
import swarm.collections.ListImpl;) \% _4 |# d/ K, L# S/ h
import swarm.defobj.Zone; , x9 u' @ a/ a: S5 a: ?0 u5 {
import swarm.Globals;. z- p8 [0 Q# v- C& ~
import swarm.Selector;. N, D+ L8 j, f: j/ b/ E
import swarm.activity.ActionGroup; 4 M1 _9 M2 g1 M' N2 F
class Agent {- x6 j, x+ n: X
char id;
`4 L: \3 B+ `4 _
; U# W6 d1 E: Y% O0 X! Y Agent(char id) {
. G7 Z. _1 F6 N this.id = id;
/ Z2 ~6 A2 I g }3 a& g8 C% X6 S1 N/ U
6 l: B/ g8 ^# s2 C! s
public void agentStep() {
( b) P% y* l% g" Z. i) C System.out.println(id + ":" + Globals.env.getCurrentTime());9 _* m/ f$ D2 m& |6 S/ M
}/ G& s2 y: a: Q6 s2 Z4 F
}' P; h4 c# f, z: _
1 C- C9 |: d/ }2 a9 p3 e( Ipublic class ActionGroupDemo extends SwarmImpl {) S% ~# b3 ], u" L' e9 c& a
ScheduleImpl schedule;( g! b2 Q/ @4 \" f4 k
ActionGroupImpl actionGroup;
" u4 A6 n* v$ `8 W ListImpl list;4 y V- l/ e; {
char Id = 'a';
& w# _, }/ b0 b* G3 h& {- W3 n3 w) _1 ~6 i+ z6 P( y! @
ActionGroupDemo(Zone aZone) {
0 U9 |& i& {; b) t5 B0 H+ y; R super(aZone);/ }% v. l) i, U K5 E
list = new ListImpl(aZone);9 E4 l, M' g& W7 q' ^% e
swarmSetp();- n. j8 m' }. ?3 @* h
actionGroup = new ActionGroupImpl(aZone);
5 {+ ^: X* y( d5 `4 m9 h schedule = new ScheduleImpl(aZone);; {) }: J6 ^& P& B
try {' ^# @. o' j) R: k9 h
Selector agentSel = new Selector(Agent.class, "agentStep", false);- _2 Y9 b. Q: f% W# M3 ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ L9 J- I: r+ a7 D+ W # Y4 x9 R+ v7 K$ t. Z
actionGroup.createActionForEach$message(list, agentSel);
. O: }# T2 ~# T! v: W/ w% r actionGroup.createActionTo$message(this, swarmSel);
/ p' }* v7 C2 l" |) X% O7 J1 K schedule.at$createAction(0, actionGroup);
' G$ z! f% {# `' @1 N5 D0 w% A) L schedule.at$createAction(1, actionGroup);
t: w5 U. z: R4 S$ P schedule.at$createAction(2, actionGroup);
5 v% Y z c1 x% R4 J) G8 O2 T
* B( D ~: w7 i/ r } catch (Exception e) {
$ g$ k$ f( c0 v0 V3 f, v e.printStackTrace(System.err);
1 G: Z/ s; D* Z //System.out.println(e);
4 n) u8 c$ [5 X1 L System.exit(1); i* H8 u) f0 c1 P- E0 E
}% D' z) i( U) R* K: I* d5 \# L$ [
/ _, F: T. ]- i* L
2 u( Z$ ~$ b. Z! Q
}, K) W& }) T# b2 W5 G
, f0 P8 Y/ j* ^3 m& `; ^ private void swarmSetp() {/ S* B# Z& T6 p& E
list.addLast(new Agent(Id));
6 k2 \9 C3 {, g9 G. f Id++;$ ~# C3 n" @/ f6 G
}
1 B( F- W, b/ w
$ ~/ T, ], i c2 y, k, u9 z public Activity activateIn(Swarm context) {' c! ]' S2 }; o1 _/ K. s1 b
super.activateIn(context);
0 g: _3 M3 T1 e6 T1 H schedule.activateIn(this);2 ?& S9 Y" v( B1 X1 P
return getActivity();
0 `) u. v; D/ q3 } j7 y, g4 Y }
2 f- g. N& z# y9 P+ Z; N5 p
o* c7 z! M3 e* ~7 V1 L7 l: ^' c public static void main(String[] args) {
- ?4 f- [' Y# E6 m# t* v9 t7 n; G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% s: T) ~4 P8 p1 M9 z0 w, B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" y6 @7 _5 E9 i! [ swarms.buildObjects();
( @6 ?" i e" q. ~, q5 u swarms.buildActions();6 r* j8 U7 T, c, w8 `2 M
swarms.activateIn(null).run();1 r4 I- _" p/ L! L' ]0 _5 N
}; a& @' H5 L- m( U0 I2 Y/ ^/ R
8 L% O" B- N1 c5 e1 c4 Z8 w
} |
|