|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- ^. Z, L5 h/ t/ h7 d
5 `- I0 k; D9 L) ] `9 W2 K' j$ N$ U' e) y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& k, Q8 b1 }# S/ P! y0 s: Q, i+ u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# m* O4 C7 z% n, q) V5 X
swarm.SignatureNotFoundException9 ?8 `$ g2 |* F& A2 r' M6 O
at swarm.Selector.<init>(Selector.java:76), U# Q* o3 K b2 X c) v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% U3 x5 W) Z9 R- e' H0 v( w8 [
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( d0 J5 s- e7 Y; Y+ k, C$ s \1 _2 u& D3 m" P3 `5 E3 U7 p6 U" ?
! K" Y) B3 e% d3 `5 }import swarm.objectbase.SwarmImpl;9 o7 ~9 I" M- d1 q
import swarm.objectbase.Swarm;
+ U" Y4 H9 k. O' f: f$ Nimport swarm.activity.ScheduleImpl;7 t) ]) [3 _4 x$ G
import swarm.activity.Activity;
9 f1 T1 C, s' cimport swarm.activity.ActionGroupImpl;0 Q8 C1 r# x- b4 ~6 u1 s
import swarm.collections.ListImpl;9 o0 J9 T( C4 J/ Z; J( x
import swarm.defobj.Zone; & ?0 Z- M2 O2 b, F, a" X
import swarm.Globals;
' H4 W5 M) Y5 d2 ^# d8 d+ `3 Iimport swarm.Selector;
' n/ T! l' Z" \9 j% x4 E8 Nimport swarm.activity.ActionGroup;
. L/ k0 I8 h5 vclass Agent {2 n4 M! N! w' B4 U% f
char id;
# r! R. Q/ E* p, ^+ T) X, O% Y- {5 o7 Y% Q/ E( l
Agent(char id) {! D8 y' C8 G' A! }9 b
this.id = id;
/ q0 K; x# P0 \. [( I' t }
; g2 |7 d; F j3 f- P% F V/ g b$ _4 a8 h/ w
public void agentStep() {$ u. B* T9 Q; ~1 I: n
System.out.println(id + ":" + Globals.env.getCurrentTime());' L8 G! [) p$ K) |
}1 l+ v- k( L( o, ]) M
}
, X3 r; F7 U* Z; }
% p: t1 `& D5 f1 K* f( Apublic class ActionGroupDemo extends SwarmImpl {# A* p: g r' T$ Q7 C$ |
ScheduleImpl schedule; O2 I: o# ?; I. f# ^
ActionGroupImpl actionGroup;- A- y9 h+ S5 _, `
ListImpl list;. V5 u' ?! R. z( _6 U
char Id = 'a';
W h% @2 @' R! R- n8 z6 ]
7 @' U$ A! J, Q' |! W ActionGroupDemo(Zone aZone) {
# g8 ~. I' t# E% d super(aZone);
: {' @0 Z3 c* N1 [7 j$ b list = new ListImpl(aZone);9 B) @- e9 f) {0 N1 _
swarmSetp();$ z% Y2 e8 p" u* M, T6 H+ A
actionGroup = new ActionGroupImpl(aZone);
; T. |5 y$ d1 d5 q8 t- @) s schedule = new ScheduleImpl(aZone);6 n) I$ q- |! ^; k/ q& ^
try {
8 ~' r0 G0 e! c) k" O Selector agentSel = new Selector(Agent.class, "agentStep", false);9 q g" O& U0 M; S2 U3 i8 s4 a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" f/ p! q& _& t1 ~4 F! n0 i- O
# ?1 [* K$ m4 E' {& A
actionGroup.createActionForEach$message(list, agentSel);
% |" y; ?7 S/ y actionGroup.createActionTo$message(this, swarmSel);
# Z% n# o8 }6 `# u. K schedule.at$createAction(0, actionGroup);# w$ p/ K; O/ c* z7 \
schedule.at$createAction(1, actionGroup);
1 k! P" R/ F9 o, [ p: y( } schedule.at$createAction(2, actionGroup);8 S- Q, `6 i p
* w$ |* o; V% h! W3 S1 S
} catch (Exception e) {
. e7 c' s! J k; ` e.printStackTrace(System.err);5 G4 ]# m( O0 \: `% z2 A$ z' |
//System.out.println(e);9 s" C7 j/ u1 K4 Z# O: J
System.exit(1);
' R4 E! o' |/ ?/ e5 D0 m: x } m4 u6 Z( V9 _8 i2 y
" n6 P* G9 u! @8 T% z. c. n
& j" D* h% u6 p0 X1 b( U% d }- s+ p& G9 ^3 o( |1 t
5 l; q8 @% i2 x private void swarmSetp() {8 K8 I1 g6 N1 r0 l9 A# |7 X
list.addLast(new Agent(Id));
/ [3 S+ N. k* J" w) z Id++;$ B$ t1 T8 K$ T) s) h1 T; y+ ]
}8 a9 T3 K, t9 i
/ P. p/ ^: x, Z$ r/ P: g/ ?" m( i" B
public Activity activateIn(Swarm context) {
" h8 Y- o y6 N2 F# i/ [% ^ super.activateIn(context);
. B! w5 @% Q; G7 ?* x( J S* p0 G) c schedule.activateIn(this);
* U; v6 c, b: \7 R" y# e: R5 n return getActivity();- G) D: U! t# j# A& j! ^
}
, }% P8 u3 O6 W2 j, ?% T
2 V/ A( u/ Y3 j7 q: F& } public static void main(String[] args) {+ _- N% l, L0 a, W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# \, k1 L; u- D. L" \* |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* f* y8 i o- {9 n" |
swarms.buildObjects();2 w7 y$ b4 x& S4 M
swarms.buildActions();! K; G0 x! j/ V, O ~- g+ Q* C3 r' K) {
swarms.activateIn(null).run();- ]: j9 N+ k4 D' t# `
}4 p! M8 n$ ]1 n/ |4 z9 f7 Y
1 {5 i8 v& j( m8 t, K% c
} |
|