|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 H, e3 g. a' K
2 ~/ ?0 R# d5 z6 ~9 i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 F, G2 k* m9 X/ |, c9 x1 N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- f6 ~2 A& I6 n* V/ [0 aswarm.SignatureNotFoundException* H* y% J8 Q/ O$ n" I
at swarm.Selector.<init>(Selector.java:76)
7 @: G. n: ]% @ C5 H8 \8 Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37), \- c8 S, g+ ` u
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: P- E0 \3 X- a& F: }7 U- X
# d; p2 a5 n$ k. @% }* u3 L, D/ [' d' G& _* Y2 e. s/ D6 L R0 F
import swarm.objectbase.SwarmImpl;3 a- W6 z3 Z7 k+ x
import swarm.objectbase.Swarm;
+ n2 B* Q+ c, y$ ]6 h3 vimport swarm.activity.ScheduleImpl;
7 C8 `- H! [$ eimport swarm.activity.Activity;) @) _) W" ~8 P& d- P, j; u8 O8 X. Z
import swarm.activity.ActionGroupImpl;
( U! l+ A" R( P) ~% h$ K. ~$ \+ r5 eimport swarm.collections.ListImpl;( I) W7 Q$ s/ y8 V% W; Q
import swarm.defobj.Zone;
s$ v0 `* s& K' Vimport swarm.Globals;
% g# q8 [, S5 S6 b# d' N8 ]+ Uimport swarm.Selector;
4 }% u" d5 K' A. Aimport swarm.activity.ActionGroup; ! `! `* @' g$ T
class Agent { [8 ]5 ?% @# L, e* q
char id;
! k# J/ k/ z, L0 C3 N) d3 P
. V9 K# X0 L, Q1 l( D: T' j/ L Agent(char id) {5 O& Q0 j5 T5 E }6 x
this.id = id;: M. O# O3 m4 X- D" n
}# Y$ |& m% T7 N, L! S1 ]
8 ~$ R& m6 @1 Q- t0 e* i l
public void agentStep() {& X- d7 o: C+ V- l' ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
; J. p- l1 u4 c p; { }3 E1 } J- ^' r- x
}
7 h3 _ x+ s2 J. ~0 }5 Y
) P" Z: N& f8 _8 N- }# N! i% Epublic class ActionGroupDemo extends SwarmImpl {% D" O5 ]$ m# M& l5 F% o# k
ScheduleImpl schedule;4 H/ S- u4 t G8 r% a( J$ K7 e% [
ActionGroupImpl actionGroup;3 }/ B, |6 S6 T$ C4 S! R/ I
ListImpl list;' `. x/ A+ d7 h3 [/ ]' N) P% v
char Id = 'a';
7 q2 L% a& Y+ Y- N5 _) @: _% l4 {1 w" H$ \0 s
ActionGroupDemo(Zone aZone) {+ s: V r3 D& R! C$ ]
super(aZone);8 m' N6 w4 `- o6 d+ N( ]
list = new ListImpl(aZone);% R7 t) y5 M$ A6 a* a
swarmSetp();2 L; k8 d6 ?0 ~8 P; L* B
actionGroup = new ActionGroupImpl(aZone);: F8 }6 @- ?# b# ^
schedule = new ScheduleImpl(aZone);
4 w) t( Q4 w0 z$ }. B try {+ d6 v8 V& c, v1 ^
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 u6 X; i1 a% E/ r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( G, G4 I S$ C' b5 B0 ^" s
0 E/ e1 n: v& I# e actionGroup.createActionForEach$message(list, agentSel);
- m) {; h; P6 d& D) u4 k5 E/ m6 H. y actionGroup.createActionTo$message(this, swarmSel);
) S( z' ^2 R) q9 ?2 ~ schedule.at$createAction(0, actionGroup);6 u$ i+ A1 |+ }5 j. ?
schedule.at$createAction(1, actionGroup);: [' r1 F8 Z" p4 i
schedule.at$createAction(2, actionGroup);
& d8 P5 W6 j8 Y3 m' E1 N& R$ [' p4 {
0 O' [! H! p# R } catch (Exception e) {* Z) m; e/ V, J; S3 S/ k$ s1 W+ R9 @: s
e.printStackTrace(System.err);
* ]7 s8 _9 u. }2 p //System.out.println(e);
+ A) D7 I$ J, ~6 E3 ? System.exit(1);8 r5 E0 G1 w+ a# M* k
}
2 d2 t' N- T* }) v
4 v8 ]6 F& A, M" G+ U& i0 u' h9 C4 e$ B$ N
}4 `7 L& M# N% O) s
. T5 v c! a, J6 W
private void swarmSetp() {: R/ V( {4 U6 U" s) k
list.addLast(new Agent(Id));
8 Q' J& O0 k$ |& G Id++;) u! u$ Y0 [$ ^3 i: o
}5 z8 D" F( @0 F- i) M/ E
1 F7 d0 o( Y( P; @
public Activity activateIn(Swarm context) {
8 X4 N+ K7 S! d1 D super.activateIn(context);
( \9 X9 e4 I, S/ \& p schedule.activateIn(this);8 S+ u* z1 r$ r* c
return getActivity();. p+ @6 @- ~0 t6 E& C' w; {7 b+ v
}5 Z+ j6 R2 ?# E4 x# ]4 X# d# `; z
' w9 k3 G& j; E4 y0 ^! r _# o& q public static void main(String[] args) {- f: n! S1 X+ \1 u9 |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. w# c3 z$ |2 l1 q" D. N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 j4 Z* [( s) u; D4 s( K% W# W
swarms.buildObjects();
# n8 k- D7 E* e# l5 M+ A swarms.buildActions();
: G! T3 k$ z% i$ e8 }# N' ^ swarms.activateIn(null).run();" r% A& D0 H3 W2 I
}% S/ K/ {+ @# {
* T& O! a7 r3 J0 l( {* j# Y} |
|