|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 L: B# w9 W J3 w1 M
: h$ e8 G! @* L3 ^; a0 r- H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: M5 L! k0 U C* u' Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 |: E. \8 N: W" O
swarm.SignatureNotFoundException
: X' A. W0 b' ~ D* e% A# P$ b1 g1 h at swarm.Selector.<init>(Selector.java:76)0 Y2 M* w) Z/ Z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# n+ h }' O; Y1 F1 j
at ActionGroupDemo.main(ActionGroupDemo.java:67)& U" M% F0 I2 p+ g& H4 {$ y- @4 k9 l
! u8 ?* T" y& l2 P! E! C
) r$ D9 L# J3 P( \& x9 Z/ R! }import swarm.objectbase.SwarmImpl;
* d/ {( ?( v) d$ o. J8 w" yimport swarm.objectbase.Swarm;& ]5 V3 a" T' Y( [" P8 G# ~
import swarm.activity.ScheduleImpl;
( w8 m- r6 y7 w! J2 aimport swarm.activity.Activity;1 ?9 {* T) F; ^! k8 T1 I, X. t
import swarm.activity.ActionGroupImpl;
/ O( T- y& h3 rimport swarm.collections.ListImpl;: X9 b* I; d v* _( W# Z. R! y
import swarm.defobj.Zone;
6 b5 n! y, ?( jimport swarm.Globals;
8 t2 r5 t% m$ o3 cimport swarm.Selector;1 W& _9 S' t4 t3 ^# u, N. U t
import swarm.activity.ActionGroup;
* }3 O2 a3 `1 Y7 y# R* V" Fclass Agent {3 \/ z4 N. W5 B. [5 O3 b0 S: T" `+ `
char id;
1 n% ^8 @; ~) E) { `1 T0 G" t+ d" E6 }6 X' F$ \
Agent(char id) {$ |& ^% q; }' o/ T, K1 K
this.id = id;
. P' _- Y$ G2 {2 ]* F+ `+ c1 ^$ v/ J }1 r S: x6 T( Q0 h$ C9 l3 o
1 P4 {/ T+ w, ^
public void agentStep() {
6 R8 p0 \( u F. t System.out.println(id + ":" + Globals.env.getCurrentTime());
0 \% U; _2 S2 `" ]9 H }9 D5 ]7 G4 F: _. i" Y5 v
}
- V/ I# v) C% J/ k6 E: j8 T7 n* L! K5 L, H1 L' t& `$ @
public class ActionGroupDemo extends SwarmImpl {
- h; o) l9 H" } ScheduleImpl schedule;
+ x n" p9 r9 [) k; U ActionGroupImpl actionGroup;# T/ X3 [6 F, O/ V. ^
ListImpl list;
! U) ?" C# g% `# \ L# m" P+ w char Id = 'a';
/ r$ {1 X: L5 a# D) x
! x1 h0 E& o Y& K+ l% U- g) k9 V# M ActionGroupDemo(Zone aZone) {
# D) `2 E; Y7 t7 E# C5 R! y0 [ super(aZone);
( R/ e: t3 j+ F list = new ListImpl(aZone);
8 Z! \8 e- G7 q* d3 c swarmSetp();/ {5 Q& O/ f p
actionGroup = new ActionGroupImpl(aZone);
! K* y3 t! s# ?8 S schedule = new ScheduleImpl(aZone);- R9 {' ?; z1 x' `' t( E' E
try {2 Q8 i$ y: a/ g. ?/ c
Selector agentSel = new Selector(Agent.class, "agentStep", false);( Z: t) g2 s7 [& |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 a* ?3 O3 B' s! [. A# \3 g' M
8 m* l6 {( ^* \! y/ v5 J actionGroup.createActionForEach$message(list, agentSel);
! t% d* Q& U( S* ^ actionGroup.createActionTo$message(this, swarmSel);
5 P2 f7 D3 O* d1 e) `! H% T' |5 h- u schedule.at$createAction(0, actionGroup);
) f# j5 P# C/ Z- M K! `$ _ schedule.at$createAction(1, actionGroup);
4 G( V# \- l$ u5 {6 a; O4 a schedule.at$createAction(2, actionGroup);
6 D# D l1 k. G" ]) i3 ?/ Y3 Q+ L$ | L- [2 s: n1 R
} catch (Exception e) {; m2 m1 S4 [+ _) r* m6 j" g
e.printStackTrace(System.err);
2 Q9 |% L& Z; \6 J/ C* q) J //System.out.println(e);
/ E; y6 J X+ z5 W0 ?) g System.exit(1);
1 m# l3 k" b* C5 T3 d- f; c }
" M9 K3 m' E! l
; s2 D# L& d8 @9 h# Q" I* e2 d; k0 Y$ p$ l; j! d
}
2 ?4 z- [; |: I3 d* ?2 A2 O; t, a3 S( N$ {# l w' @" d
private void swarmSetp() {; P; O2 J, a1 S/ o
list.addLast(new Agent(Id));
& w- D' |4 w9 v0 G$ B c Id++;% V' r3 s& \4 G' m/ J: W5 z
}& ~4 o/ g1 i7 M! x$ W) Y
2 F$ ]: F- N8 O9 O: m- h4 f public Activity activateIn(Swarm context) {
+ o8 o/ I" n6 ` super.activateIn(context);- U# j& C8 {! u7 l
schedule.activateIn(this);
, I0 g& N! I' ?& N return getActivity();- @7 Q1 m: W( z7 y, C+ D( w
}
% g( T9 n8 R' [9 n/ r) T! Y( U0 o% ]! @: K! j
public static void main(String[] args) {
+ s0 ?9 W* a6 _/ c Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 Q1 e, F1 T2 j" g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 n3 q/ F3 l/ L% V1 m, i0 u) N( i
swarms.buildObjects();8 w' d0 U) T1 ~+ M- e
swarms.buildActions();
- n: m7 |5 o" N2 ^$ A1 `9 o g' I swarms.activateIn(null).run();# [$ p% B5 F7 x; S, W* W* _; b2 a
}
}/ t! `( ^2 l" k0 S( ?2 F; {- m6 R* @) J# p* M" b; C3 c
} |
|