|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 i" J; G# H3 W
5 s. |1 U. a- O! ]# @5 |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ [2 s. f5 D5 W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 j4 R+ e0 d; C# \- J$ V2 _swarm.SignatureNotFoundException
( H4 f+ d6 V- [3 i; X3 q/ w( l at swarm.Selector.<init>(Selector.java:76)
1 b( {0 U. v) R" U; Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 T1 @4 ?- ^- Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
& p: ~3 f5 O* s/ I7 k3 L P
- T/ E. G' n+ y# e, G# S5 [" T# H5 A$ _
import swarm.objectbase.SwarmImpl;
$ z* r! I( Y5 d/ i* n: M0 K9 iimport swarm.objectbase.Swarm;
) m' u7 l: _6 w4 t( ximport swarm.activity.ScheduleImpl;! J2 u0 A+ p' H4 w# g& H
import swarm.activity.Activity;
8 `1 q+ V/ Z0 L" m3 V- bimport swarm.activity.ActionGroupImpl;, Y& l0 O/ u3 i
import swarm.collections.ListImpl;2 ~# x! Q, Z7 [; G- N" b' L
import swarm.defobj.Zone; , \. k4 N/ p8 R) Y1 h D
import swarm.Globals;1 v9 p8 s* @5 x) d/ _ Q) r
import swarm.Selector;; [7 n% G% f; A, M8 l) e8 m7 O% ?
import swarm.activity.ActionGroup;
! v. H* ~/ K9 d! y1 p+ bclass Agent {
3 A7 g& q& b' q. Q( ?3 ^ char id;8 b# _6 A( L3 \) O1 d
3 r) g% T& ~6 x) F Agent(char id) { V" s3 q! B# K6 {( l
this.id = id;( n- e7 ?) V3 f4 k
}6 v% P6 M5 N% c
) n4 f) ~, Q( \. K# U& x
public void agentStep() {
, k7 Y; v; R6 N+ g9 |( u3 t k System.out.println(id + ":" + Globals.env.getCurrentTime());
9 I9 c. }( q4 S3 w# c" e8 b: z+ _ }
# ^- L" U$ c. W: ~}
% G" |9 c7 s" z B v- a( X2 m/ \9 T
public class ActionGroupDemo extends SwarmImpl {
: ~1 h& r6 x) U* | ScheduleImpl schedule;) ~! [! e7 N( M3 z; L8 G
ActionGroupImpl actionGroup;0 I' R1 a) K( @5 _* H ^
ListImpl list;1 v- a! R" O+ `! {, p5 R
char Id = 'a';2 H5 g' W% a# Z8 {& B
4 c3 k" [$ n$ G/ `& Z9 x& u: N ActionGroupDemo(Zone aZone) {
4 j; [9 f4 M! t; D* U: j4 Q; O! r- e super(aZone);
/ ?5 c/ R2 L6 `- h* N list = new ListImpl(aZone);
# F. F7 R9 {, U; i4 [7 `- C6 | swarmSetp();; T9 l$ f. q1 n- N
actionGroup = new ActionGroupImpl(aZone);
3 X6 ?9 U- g! Y schedule = new ScheduleImpl(aZone);
M/ u7 P/ q! u J( A try {
/ T$ @: H9 B% Z( h8 f Selector agentSel = new Selector(Agent.class, "agentStep", false);
h% M+ N' R, i0 [% h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# k6 @5 o: o) r I
# F' m9 \ X) `, |" d* X actionGroup.createActionForEach$message(list, agentSel);! @/ @- R* s; m. M) r
actionGroup.createActionTo$message(this, swarmSel);! ^; p9 f" y1 `! E4 ~9 C+ w
schedule.at$createAction(0, actionGroup);
. l8 s& O |, ` schedule.at$createAction(1, actionGroup);
W/ S6 V6 I6 o) h( H% i0 Y7 ^ schedule.at$createAction(2, actionGroup);, q5 p+ H% t, f8 e6 W
) H& }; b, [. u6 R* n
} catch (Exception e) {
& Q s0 s- x7 i4 ]( D c e.printStackTrace(System.err);
, P7 B* X% g z //System.out.println(e);% I4 ^# H! E/ u8 j9 A& U0 s1 d; q; {
System.exit(1);/ c1 Q5 K4 A: i0 [
}
! m: l4 H+ V7 L" I* L, \2 K
. M0 n2 x# F% [ y V# a; K
; i' |. g, Y. t e }3 h* n% b* o8 j
% ~1 e8 h5 U7 ] }5 D$ ? private void swarmSetp() {9 n1 r9 l# z0 ]+ @
list.addLast(new Agent(Id));
; g7 r2 F) {7 F, [ Id++;6 z- q% ?2 Z* V$ E& R: C8 r5 f
}' v9 M! W- o- l! F( u
: S* T, N$ k/ p% U$ l" o
public Activity activateIn(Swarm context) {, W# d; O, r0 m( w5 Q
super.activateIn(context);
9 Z3 h' w+ K; g7 _- u1 f4 W! e schedule.activateIn(this);
5 F0 e5 X& {& c+ d return getActivity();
( r+ y% E0 _. H5 a( D9 y }
' L1 a4 y$ D7 P" P8 }+ @, D2 d8 \# k1 J
public static void main(String[] args) {6 C; c9 i$ `) {$ N8 X* L# E, l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- Z0 |& J7 m* v- \; l0 s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
P2 Y5 W/ {7 b& u4 Y, B8 T+ g swarms.buildObjects();
( \2 t) r3 [4 }6 _ swarms.buildActions();5 s3 {( d9 @* a$ t R
swarms.activateIn(null).run();# h1 X8 E( g& ?
}5 R* ]9 {9 T2 d" Q7 G# `
* D8 P5 u5 f% _* I! f" G} |
|