|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , c# ?7 p G; S7 U" g
( {, j3 \+ a% J" X7 w, A: h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& I) O! X. O* ?" A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 X( x" C& y0 M
swarm.SignatureNotFoundException
& K9 b/ F- v* r1 Q+ x at swarm.Selector.<init>(Selector.java:76)
/ g0 s1 C( |$ M- X, M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 w# v! \" H& u& t- i1 Z at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 I9 ~4 S4 K# ~2 I, `: ~6 O' j+ O5 J, w( Y7 H
5 d, T' U0 w( M0 F* iimport swarm.objectbase.SwarmImpl;/ V) R1 p: `$ d8 A
import swarm.objectbase.Swarm;- J. @$ h8 Y7 s, M3 ?
import swarm.activity.ScheduleImpl;6 L; U3 r+ H$ X
import swarm.activity.Activity;
( C0 l) H# s6 yimport swarm.activity.ActionGroupImpl;) y+ _9 T; f) V( j2 U% S
import swarm.collections.ListImpl;
! |) u" u7 I) S4 fimport swarm.defobj.Zone;
" J7 i3 f9 c; h2 \+ cimport swarm.Globals;6 t$ I6 Q. n$ w
import swarm.Selector;; M) t6 {+ a1 \; Z
import swarm.activity.ActionGroup; % ~% G3 J' l. e9 J j
class Agent {1 B: G" ^% ]! W. Z. N8 z
char id;
" o) w. ?# z2 q: g" n5 F0 A8 u" r# C! d
Agent(char id) {6 A! @6 W2 y) b' K$ ~
this.id = id;: G" ]7 R% N: ~+ g
}
% n5 @5 N; A4 T* U$ K; [4 Q" Q" y) u8 |( n$ c/ M
public void agentStep() {+ C# R( b3 f) O/ F7 g4 I, r
System.out.println(id + ":" + Globals.env.getCurrentTime());: q; B( l l/ o4 n- t
}# o2 e+ d" L$ H
}; m4 p. i/ G6 q2 h9 B" @
( A3 ^# n1 L7 w* @* }public class ActionGroupDemo extends SwarmImpl {
z6 E2 c3 U- G0 f ScheduleImpl schedule;! h0 O3 v; A2 G" B
ActionGroupImpl actionGroup;
, u& A: H6 | _. e' Q ListImpl list;( I, R9 {4 j) X" X
char Id = 'a';! ]7 {3 g) |3 L
' W- @" p" n+ S3 [" ?+ D# P, S8 e
ActionGroupDemo(Zone aZone) {
$ I' M P# [0 ^5 O5 f3 Y" n" p super(aZone);0 I0 W$ Q$ L1 y. v- w* P7 R$ S# y' Y. J, T
list = new ListImpl(aZone);
6 t4 g3 W; G* i6 ~+ I swarmSetp();* r" S: M6 Y9 _1 Q k" H
actionGroup = new ActionGroupImpl(aZone);+ ]+ \8 @7 e2 I+ K! U% G3 Z% t' D
schedule = new ScheduleImpl(aZone);! y4 ?5 y; ~: u
try {) A/ G; q. ]! r6 g
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ R& J/ i( s2 m/ \3 h; K. j t# z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 z; m6 O. Y; z: v
$ o$ ^1 n; ?% @1 n: \
actionGroup.createActionForEach$message(list, agentSel);
' ^7 C( }5 u; N4 _9 x) O W actionGroup.createActionTo$message(this, swarmSel);" V! k" J+ W- p6 D% v6 n
schedule.at$createAction(0, actionGroup);
: ?) \+ m$ Z/ O+ r schedule.at$createAction(1, actionGroup);
+ h3 V# }, X) [; c# [ schedule.at$createAction(2, actionGroup);
3 v& m; P( g4 o V4 o& u- }0 N( B
4 n5 G" t- X: e4 D3 ] } catch (Exception e) {
3 S/ L) x4 o( l5 K; | o e.printStackTrace(System.err);
' F$ l- D% n* c& A3 M //System.out.println(e);4 T$ D% R) {- r" i. ~
System.exit(1);3 K/ |* ]$ d8 n7 u. N
}1 V( F! Q9 b% v8 i# v* i
- L3 x' [ h$ L2 V
! k, C! {5 O9 ] Y; f9 z
}, A" V( O! N* g* i
) n+ G1 j4 ~; k$ }6 |9 C) F0 K
private void swarmSetp() {
! {$ s1 K/ {7 F% O! u7 a% B list.addLast(new Agent(Id));" w: t, ?) O6 |# p$ z7 E; M
Id++;) D' G |; [! S# x T
}
( I) ~1 e ~/ c5 D0 _0 E/ A# @. r1 U
public Activity activateIn(Swarm context) {
" ` h8 A. V* S8 p$ P: u7 E+ R super.activateIn(context);
" P5 |. o9 c% P0 j. L schedule.activateIn(this);- ^& L9 r; \0 a# u& [/ q3 H( p# C! o
return getActivity();1 B8 H% ^* P, l7 t+ H) G+ X
}& q; h4 ]' H+ d! n( k
. Q2 q; t- V- F4 O public static void main(String[] args) {
0 @* g N( v( w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' O' [* V5 [$ f. \6 j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
R" L9 O! _; I9 U swarms.buildObjects();5 Q6 k- c* Z$ P+ \7 A
swarms.buildActions();! o; |% ?2 g3 H6 P# a
swarms.activateIn(null).run();
" h! @$ V( M5 c1 w5 H* m2 e }! u5 n3 u# m4 {% U5 x6 J
! H/ f; I: q! s. y2 J} |
|