|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( }! T# _% U6 n$ s
, c: n9 a) J! T M1 J$ n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' L8 n* W# |! g. E6 l6 m5 _8 d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ p: O& ~( Q# h( K+ Sswarm.SignatureNotFoundException
# }1 ~2 K& o7 Z# L! g( ]! e at swarm.Selector.<init>(Selector.java:76)
: a4 Z1 d+ b! x8 ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 J' C3 g7 p o; y at ActionGroupDemo.main(ActionGroupDemo.java:67)
& R' c- ~6 D) |( w w1 p
+ s; }; P+ o' f7 N) K
; g; E7 F; N+ ?: t0 C" Timport swarm.objectbase.SwarmImpl;
! x; }' c3 V- ]2 X0 D/ K4 Iimport swarm.objectbase.Swarm;0 N7 W$ {* D% b. E; s* c
import swarm.activity.ScheduleImpl;5 n& l) ~+ y/ k4 P
import swarm.activity.Activity;: I* o! C- e' d
import swarm.activity.ActionGroupImpl;9 ^# B! Q3 y0 s' `. O, s
import swarm.collections.ListImpl;% s n7 L2 l, J3 W
import swarm.defobj.Zone;
# g6 `& {% W' m2 Limport swarm.Globals;
$ r7 S1 e9 }6 a2 w: a! n/ K& C2 Wimport swarm.Selector;
" S/ h5 M9 N7 |1 ?* p6 s- ?import swarm.activity.ActionGroup; " }) R2 F8 j& @' |' ~
class Agent {, i5 l' u2 S9 Q q2 U# D2 _
char id;
3 R, h3 R/ p( N; I% i4 E. x2 b9 F' I& P$ I! F& w2 p4 Y
Agent(char id) {, R: I* [( W V0 _7 E1 ?
this.id = id;
% m' H! f# q9 w8 `5 ?3 H2 G }/ r5 q% i$ z8 m! n; W) w% a
9 i8 I. Z- q" m) {. [
public void agentStep() {5 c: S# v2 k- h& f
System.out.println(id + ":" + Globals.env.getCurrentTime());8 {; u! e9 l, |4 y! M
}
8 ~; Q; B$ o, Z l2 {0 k- _1 n! `}8 y% i* k6 y% |7 \
! O7 F! T7 K+ {5 ]% z
public class ActionGroupDemo extends SwarmImpl {
) F8 v' S j& R2 i ScheduleImpl schedule;
6 M4 p# r0 }5 x( }" O ActionGroupImpl actionGroup;
* k- G- V; l; |: S3 @. v ListImpl list;! M! ]: c) l$ a8 C
char Id = 'a';% w& r, ^. S2 E$ K6 y. J% F4 f
2 t1 [+ q8 M& n ActionGroupDemo(Zone aZone) {
2 H7 I: u" }4 ~. I super(aZone);, l$ U4 X0 {+ m6 r9 n
list = new ListImpl(aZone);6 _( Q9 s- u) q. c: l7 {# L* k
swarmSetp();
% | c7 t) d% O( L) ?; _ actionGroup = new ActionGroupImpl(aZone);
& R& F& [. D& t( h4 p2 a5 e) @ schedule = new ScheduleImpl(aZone);" d, S' g5 y4 {+ u3 o. O% [- j U
try {/ d1 W; N5 E* T6 ?) B! Y0 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);
! E: @& \. }" e8 G8 w$ w' B! | Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' u* h- S8 D- i! V+ {
6 Z+ R* ?) |" f8 [+ g actionGroup.createActionForEach$message(list, agentSel);4 b9 n' e' k, L" k
actionGroup.createActionTo$message(this, swarmSel);
" r. _% N) E2 A6 n1 w schedule.at$createAction(0, actionGroup);+ Y" ]' H- N: T
schedule.at$createAction(1, actionGroup);- x7 x5 U5 \; e' i
schedule.at$createAction(2, actionGroup);. j3 H) {7 N. E! x
( K$ T' A0 L! |) p# O E9 u+ H/ @ } catch (Exception e) {; N, e9 F* j, k* `, c# C% {
e.printStackTrace(System.err);8 V+ l7 q, u$ ^/ X
//System.out.println(e);# { M# [1 [, q5 V* n8 i
System.exit(1);
, R. u& F, k+ j/ e3 D0 G }
, T+ i& |: j: \- R. b, d. B3 o3 V5 a3 U. D# a
/ @, B2 s ^7 y* _
}0 _3 @ Z6 C$ b2 q- J/ ~% p
) r1 _6 x6 }! _2 t; _ private void swarmSetp() {1 ]3 i7 b( T) [9 ^% x7 t
list.addLast(new Agent(Id));
' Z" {* ` E3 e Id++;0 g0 b) E# e$ p' @) H+ s5 I3 _
}
! `, I! I" E$ y5 a* G. i5 d$ o8 e7 K2 d# `% |8 D$ N
public Activity activateIn(Swarm context) {
. @9 w0 {$ |5 H& v: C super.activateIn(context);( H# J3 |4 a! X1 R
schedule.activateIn(this);! `' f5 A0 o2 N- b5 c
return getActivity();
$ L/ v& O- U# p& b. L( l }( \% p2 z; u5 i. ?
0 h5 m( K0 I9 M2 |2 F
public static void main(String[] args) {, r0 H8 G! f( B! G W7 M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 L; c$ k& \* K/ R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; j* j9 u2 P& M8 l p
swarms.buildObjects();
7 a) q J/ u; g4 `' l( H& g swarms.buildActions();4 w7 W- g1 Z) m# Y* V; ^
swarms.activateIn(null).run();2 ?. a' S6 x- @
}
1 _) y7 u0 R, C% Z; [+ c
4 k: n# J; g9 Q i! j} |
|