|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 H2 C8 U" v$ H4 M) A/ {
, o) e Q4 E9 a% ^ n, M! @2 H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 k3 B# O) ]& J' a6 M+ o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: X( v5 a7 p3 C5 I
swarm.SignatureNotFoundException
( H( B2 ?" M& q at swarm.Selector.<init>(Selector.java:76)
( ~$ c3 n5 b: x' l; j. l; G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Z& ~' g! x$ I( {+ ]8 U
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 V1 r) t. h% @* m$ O% X3 |. g9 o
# z0 _0 J% x, `
& d( s7 \8 s, u/ i5 q4 d; d6 d
import swarm.objectbase.SwarmImpl;, ~- Q1 [+ B% T7 v% u5 e
import swarm.objectbase.Swarm;
1 k) `% ?; k. g9 ^* x5 w2 [import swarm.activity.ScheduleImpl;- {4 J0 P# D9 O1 z
import swarm.activity.Activity;
1 Q# I9 y/ c7 himport swarm.activity.ActionGroupImpl;
/ v& B# P9 c5 ~/ n# zimport swarm.collections.ListImpl;: M' e, V; L$ _- `# \ a
import swarm.defobj.Zone;
5 v' B6 h$ [* e! v1 kimport swarm.Globals;% A Z2 I. D4 u, V) h
import swarm.Selector;
5 E9 \7 p+ |' V; fimport swarm.activity.ActionGroup; ' W. s& s6 f! M0 Q
class Agent {
7 C( ]* L3 F0 c1 i, U char id;3 s* B4 [: b2 p) D# l3 ~
# S R8 J& T# V& h* L3 S/ i
Agent(char id) {
1 i& ~ b9 N. z this.id = id;
' M% \ O, L- l9 }; u5 |7 Y }- S2 K- |; q( h5 E: O& p# d; q
3 a( S# R$ Q3 u: J public void agentStep() {" z8 [0 w, u! `5 ], c5 u
System.out.println(id + ":" + Globals.env.getCurrentTime());
) x7 U* B8 [3 f+ D% S3 I$ H }) O+ E+ d- u% Z
}7 k# Y- D# p, k" y2 ?4 h& ]
7 a" o+ g. a9 n( B k& N+ c9 _
public class ActionGroupDemo extends SwarmImpl {) M4 t& m+ T+ l# j( `# o3 K
ScheduleImpl schedule;
, {! m4 e' w. w4 }4 E, z9 e ActionGroupImpl actionGroup;$ L2 m' ^' y, e; R, G2 I
ListImpl list;6 a G- ~# O4 T' M3 n# ^
char Id = 'a';
% Y' H# ~0 E* m I/ {/ a5 T" ?+ c) ^1 g. \
ActionGroupDemo(Zone aZone) {2 f6 T4 r+ x+ X2 K+ e2 q
super(aZone);
1 U8 v+ [: ]' G list = new ListImpl(aZone);! k2 S: |. F C9 d. W" |8 w
swarmSetp();0 S c5 q( x' E v% x
actionGroup = new ActionGroupImpl(aZone);
6 _% Z2 S& N' Q1 T8 s D8 x schedule = new ScheduleImpl(aZone);
0 x. \( ~" E: u, r try {: n+ u( R9 Y5 h: _1 |: P6 `
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 l- b3 N; [5 }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 O) U0 h+ ?$ m ?2 m# @4 T& T g
" @3 l. F! K) O2 R4 c6 v6 _ actionGroup.createActionForEach$message(list, agentSel);
" m! F/ I' S- B6 t0 i: I actionGroup.createActionTo$message(this, swarmSel);1 L) f- U- v2 w0 h" R
schedule.at$createAction(0, actionGroup);
2 q, e5 n' G* {* C. j8 k. S. B5 ? schedule.at$createAction(1, actionGroup);6 \! {- q2 ~" n* J& I |* @
schedule.at$createAction(2, actionGroup);
5 A( y( J0 `; E7 w1 ]5 s- s, h' O% A9 J0 Z* G, |: @
} catch (Exception e) {
: n, ]7 s0 m. Q- K- i0 L# b e.printStackTrace(System.err);! m$ N, s' ?& [
//System.out.println(e);! i5 n5 |( u( W' a
System.exit(1);/ n6 A: t9 ]6 ?) }) \
}
& V4 l8 h, S1 m, h
; t- V" |* T: f; `+ D* u
3 v$ h$ C; V- a, Z9 p: ^ }
+ s! i& N2 I! S. ]8 X. [' U9 U; g @2 D; F' L) R
private void swarmSetp() {
7 J3 l: p7 j' X3 M2 N0 g' c list.addLast(new Agent(Id));
: q9 j# b) F3 x3 }: } Id++;
# h/ `6 j7 u( t" {: X2 j }
% e Q; d' U* f2 u. h5 C1 S0 m# E# D1 D) P# Z* Z& l8 i+ ]8 W/ D* y
public Activity activateIn(Swarm context) {
( I: W- T% E$ P) R super.activateIn(context);0 ~$ j/ A C6 m& R: r) p& f8 S* X
schedule.activateIn(this);
' O* j, J! x; @( } return getActivity();
7 l1 y1 V1 W. J/ S0 @" m8 a }
+ L1 e! C" {/ c! _7 D" o) t" A3 f" c+ @9 q6 D. W s
public static void main(String[] args) {" J& R( U& E2 Q5 P. a
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 w$ ]7 G. w. t/ M. V9 ] Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! N3 o6 r/ K2 X% X8 G swarms.buildObjects();/ }* N& C$ ?5 ] r
swarms.buildActions();0 ] _: w6 }# E, u7 A! P0 k) ~! k, T
swarms.activateIn(null).run();
7 t, k( `% E Y# b }
+ l" j, ~# N" R I2 T
7 O6 O2 Q/ S+ U, n# [1 ]6 i2 J} |
|