|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! C8 W9 X% i" z9 {) k
r- ~" c0 x0 ?2 x0 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ R' Z, h5 r; i" X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 }7 V: @( U; q
swarm.SignatureNotFoundException
: D' y6 A) H% ~% f: X at swarm.Selector.<init>(Selector.java:76)& ^. ~( P' c$ z/ g. q F$ H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ v* e! h+ f5 y: A, H
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: c9 ]! h4 d$ a3 }" s# C
4 @# m& _8 L5 P. d; p# l
1 [. v4 [7 T) ?/ A) e; Q: Limport swarm.objectbase.SwarmImpl;& X- T" \% V" a2 x/ l* ^
import swarm.objectbase.Swarm;
7 s9 O* E, ?+ C l" x- y! ?import swarm.activity.ScheduleImpl;
9 c0 u" P2 n }( Z3 T% G+ @0 pimport swarm.activity.Activity;
# P8 N5 j$ }9 b" g) Mimport swarm.activity.ActionGroupImpl;, ]% o6 V6 [. w/ c
import swarm.collections.ListImpl;+ ^' m$ e$ i# [6 }( R" Q
import swarm.defobj.Zone;
M' _; N$ L( L9 F1 \3 simport swarm.Globals;# s4 ^6 g/ X. }7 _2 S
import swarm.Selector;& r% W, X6 u+ g2 {3 S
import swarm.activity.ActionGroup; 7 \/ Y6 a: _. v' \- Q- g
class Agent {
F U" T, h4 w; I' G; i8 g char id;
' `! I3 z; s$ ^/ |4 ?$ m( X. J4 J8 \4 r* b
Agent(char id) {0 D3 J4 p9 Z& q$ a6 l1 z+ A" y
this.id = id;
/ K: S) M( _, d. j }
i5 M' z( G/ q: {3 i
6 r+ j0 z" }, g* v public void agentStep() {
4 v; w [$ J, E! g6 K7 V/ Z4 H System.out.println(id + ":" + Globals.env.getCurrentTime());7 b5 _$ m, ~& F7 o8 @
}
8 g8 J3 P, n, M: V1 d}7 J1 F p/ X/ L4 e% v- I
, P' {; M& o. T. Spublic class ActionGroupDemo extends SwarmImpl {6 u4 k$ s$ g' a0 O* ~+ }. J# M
ScheduleImpl schedule;% b- b0 y* j. U [
ActionGroupImpl actionGroup;8 N/ i5 {: \; p- c1 w8 [
ListImpl list;
1 [- V8 o, A1 a9 A# i0 S. { char Id = 'a';
) v3 s' b9 c' E) D8 |* \2 E, `% ?+ {) z( w, j
ActionGroupDemo(Zone aZone) {% _; P% e( Q( U! T
super(aZone);
8 S5 y: O% z2 }7 W# p' ? list = new ListImpl(aZone);
. ]7 W) _1 ~. b/ |( E4 N swarmSetp();6 q5 T( E1 b9 }
actionGroup = new ActionGroupImpl(aZone);4 H _8 @, z' B, B/ X [( @5 W) V0 M3 e
schedule = new ScheduleImpl(aZone);/ |& w5 z1 ^1 t& q- `+ L5 F: z
try {
0 S; N& Y6 q# T' X! c Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 i2 }% I" E8 _/ p, u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' i1 X6 {+ k9 r. ]( V; P7 P8 I $ W$ v+ a. H& m! g
actionGroup.createActionForEach$message(list, agentSel);$ C! b8 r% X" f% _& ?- }" E k5 H
actionGroup.createActionTo$message(this, swarmSel); Y0 b: X6 h8 L ^0 ~3 x
schedule.at$createAction(0, actionGroup);4 R! c9 ]2 O; i/ {* Y. M
schedule.at$createAction(1, actionGroup);
d/ S! c. o1 o Q. R: G schedule.at$createAction(2, actionGroup);
. h Q. T/ E9 Q7 t
% ~" u: ~& _9 f& s, F# H, p } catch (Exception e) {$ ?5 l' ^/ ?$ @9 {
e.printStackTrace(System.err);% w2 P2 W5 f* t$ L: l$ k
//System.out.println(e);
2 T5 H8 {8 N1 Y' I# M. f' m System.exit(1);" b) u4 v, m: v2 G: V s. u
}
1 k/ v6 L4 p, x" P& b5 o/ E# }4 H% z) w$ ?+ J
: X/ O" M1 R- Y& q& W3 C) e' Y& Z
} ~! N$ f$ Q. y
( P n* J% N% }+ W private void swarmSetp() {
& H$ J( ]! v5 w) a$ e$ a list.addLast(new Agent(Id));1 S5 F# T t* p/ v* Q8 G! v
Id++;
; ]& }& x" w& Q% K: Z }# G" A0 L! _9 y& O; C% y- Q
3 W8 [" b( c1 D6 K: d; L public Activity activateIn(Swarm context) {
: H8 o* i% w8 g7 Q' N3 c. L super.activateIn(context);
K+ X& q! L$ w; k& y3 G schedule.activateIn(this);
. ~8 B- _4 ?" V5 x! O' |; U& ` return getActivity();
# @9 y! C' n' f$ R9 E }4 g( A- s( B) p) S3 m9 e
+ t7 N# E8 M: L) g" X
public static void main(String[] args) {
& ]9 Y F- s; O1 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ l0 b' Y, q4 Q4 ~# L0 y5 R9 g
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 a* _/ y' i S3 G swarms.buildObjects();' d% F! e/ P- P+ x& L: X& Y7 [/ G1 }
swarms.buildActions();
4 s8 i% H- E8 B) q6 X0 g swarms.activateIn(null).run();) m, o6 K3 K B) W1 i& c' j5 v; z
}& w( [% _$ q) B( J
6 |* C# [4 {) Y9 k} |
|