|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 x: O2 T% Y' p" a! V
0 w3 E5 T6 l2 I% a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! B1 a3 q( _4 `/ x2 w# \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" L2 ~* v) U( e5 b6 ], f1 S3 p/ Iswarm.SignatureNotFoundException' A* K4 [4 m: {5 D6 Y7 Z2 N
at swarm.Selector.<init>(Selector.java:76)# i- m9 C$ P& q! t% J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 u7 x+ s0 Z6 O% [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ ?9 e N& u; q: i5 d- `
2 l% u4 J3 U1 } z+ P9 X
( _0 V: u6 k- g# e+ Dimport swarm.objectbase.SwarmImpl;. B! J4 D& D& ]0 n- Z$ y2 V
import swarm.objectbase.Swarm; y$ j0 _( k+ r; D4 u
import swarm.activity.ScheduleImpl;$ E+ x8 b) u) V
import swarm.activity.Activity;, }$ t4 C- @! y" O9 Y8 b
import swarm.activity.ActionGroupImpl;
, w0 O) S2 f9 K% y" L: o0 U# Bimport swarm.collections.ListImpl;
& w; C. f) @8 r$ X: X+ yimport swarm.defobj.Zone; 9 ~" m6 I1 ^) w0 H8 @0 s# }
import swarm.Globals;
* d% a$ W) Q% R- G' y7 c' \8 |6 f7 Vimport swarm.Selector;- e% b, b1 O- ?0 w3 T- b( g1 P
import swarm.activity.ActionGroup; & s. @) ] J( k; U! Q* `% b0 F8 ~
class Agent {! @: P. v" \, i$ V& z4 J. u
char id;
" v% e _7 J$ p8 O! \; w# E# [. S$ [: E$ R2 M
Agent(char id) {
6 Y9 U4 G# N& H# |( T$ C this.id = id;! z. m2 _& [, r' _4 E0 M$ f' {
}; j' ]& h! Y3 b% j. v$ Q
% C( K6 K7 R& z8 E9 p: ?+ V public void agentStep() {. T+ E' f$ D1 @
System.out.println(id + ":" + Globals.env.getCurrentTime());5 D' D6 H1 Q5 M, T, r' t
}
6 h6 J* d- a& O% I9 Z2 C _}0 u' q7 B( |- l( I" T$ V
* u# \( w8 w4 D5 x: A
public class ActionGroupDemo extends SwarmImpl {4 ]3 l& M+ H* I- A/ }7 y
ScheduleImpl schedule;( N; C# \1 f& o! o
ActionGroupImpl actionGroup;% I \& [0 o# l+ o# j& U
ListImpl list;2 B1 b% m0 y$ p" J
char Id = 'a';
3 H. \# x( D9 e3 s$ S0 n9 f* Z: f" D5 G% S
ActionGroupDemo(Zone aZone) {
( v% ^4 N( ?1 l* F5 x1 u$ L super(aZone);2 j2 C3 R5 Q- M
list = new ListImpl(aZone);
" O; _" d: b* h W# ] swarmSetp();% v# n1 [: |) c* u3 i$ M
actionGroup = new ActionGroupImpl(aZone);. n' R s! K9 c9 P* i
schedule = new ScheduleImpl(aZone);
1 @* W# Q$ v; O( { r try {
( A3 B" N6 Z, J% s+ X: q0 r7 P9 c Selector agentSel = new Selector(Agent.class, "agentStep", false);0 | C8 \5 J4 [0 G9 y6 Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: s# l6 ~, s* P/ I
) P* e* \" @( k, o1 b% S8 | actionGroup.createActionForEach$message(list, agentSel); S3 ^; ^1 T3 ~0 x, c
actionGroup.createActionTo$message(this, swarmSel);; T& ?$ E9 R( m+ w" U
schedule.at$createAction(0, actionGroup);3 b! c( w9 Z% w; O. z" M
schedule.at$createAction(1, actionGroup);
" K& F% W' G1 Y( O8 D* F6 f/ Y8 J schedule.at$createAction(2, actionGroup);
+ g. p1 V5 P D/ Z! M9 ?8 h" P" J8 ~
) J/ N( V/ \) N- [) a* b4 v } catch (Exception e) {" d# b$ c; W. `/ v4 J+ P. Y# u: a8 N9 R
e.printStackTrace(System.err);4 t& ^+ ?1 a8 l" Q6 v; ~
//System.out.println(e);/ X. l/ V M, P; h# _! e9 P
System.exit(1);; {8 P6 B- b8 z) {2 ?
}3 S0 b% _0 a1 a- i+ ]" I
) u$ i) s' J( l! ~# U
5 |! {. T: {* e a( Z% |) Q }2 p1 a. A4 H6 b% t$ S, M$ w
& K# N( X. L4 M, k, U5 r% \( Z# f
private void swarmSetp() {
0 Q$ h% u+ B. e8 l! P4 z4 p list.addLast(new Agent(Id));' ~/ N; d: M$ u# |* q, ~' G* P
Id++;
7 y c( w4 A% D% ^, f& o' W }
8 M6 z& g4 X: w# e; S/ m+ Q% C3 ^: |! T3 z" N+ p, y; v
public Activity activateIn(Swarm context) {
0 F a0 V2 m/ d- P super.activateIn(context);' Y2 W" O7 u, C- }8 u0 ?( s
schedule.activateIn(this);; R/ E. V- ^% k, L5 y. O
return getActivity();; P! O2 r3 v" b, n* I% O0 S; ?
}* z7 C0 ~: H" I
! I1 F' ?' v" ]; | public static void main(String[] args) {
$ ]: K' u" E( [+ c Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' i) p$ k& {6 `4 x J* ` d; }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; `& X# h$ g5 f# U+ C4 R
swarms.buildObjects();
' r, W3 h z& l swarms.buildActions();
% ~& k$ |- `3 P8 X" r9 w5 J swarms.activateIn(null).run();
" i$ v7 R1 M5 x; R! F- F1 h }
6 @' m; |! u- r" a2 g
. N; ^3 v* B c* I! q" X" {} |
|