|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% M) R+ q, B% W: b4 C* u$ T* N
% i) n: v' m; P: K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" e& l- w& B7 K% q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 w9 w# ~' l* w' r8 I
swarm.SignatureNotFoundException- q( A% Q) I" \! f5 C- m
at swarm.Selector.<init>(Selector.java:76)2 U8 ^0 W3 X4 L1 t- L+ N) V! B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 W Q9 h+ h- G9 C at ActionGroupDemo.main(ActionGroupDemo.java:67), @7 ^8 j9 D0 x: x" |/ Z$ m: v! V
% ~- k7 p' W8 o. m+ ]6 B: d5 o
$ ^7 z! p/ o8 k) c, N. a
import swarm.objectbase.SwarmImpl;
6 v4 ?8 O j* q' m+ eimport swarm.objectbase.Swarm;* ~- ~* Q4 x& ~
import swarm.activity.ScheduleImpl;
: {" D1 t; z8 o$ s9 \import swarm.activity.Activity;/ k$ B+ P8 N0 @1 A* G0 V; D5 g
import swarm.activity.ActionGroupImpl;
( S. o1 d( @& j# }$ u4 H) Aimport swarm.collections.ListImpl;2 y5 q3 m; D$ d
import swarm.defobj.Zone; 2 n1 r+ _6 Q. l3 w* j) \$ a
import swarm.Globals;
" ^4 Z( v' w! q0 x2 s: Wimport swarm.Selector;
8 r4 K1 r8 H* E' limport swarm.activity.ActionGroup; : r# K, b2 ]& x4 C* v
class Agent {
; w& A/ {2 z- }7 b- I2 y- N: d& k/ S char id;. u5 k( h; {% H" F$ H" n1 F
( ~0 s" |+ o; P- m6 n" M
Agent(char id) {
' X; ]2 q5 `5 J0 k. z" y& Y/ B this.id = id;
' v! L4 M+ j8 K5 X2 } }
, @- o( m! s% t* U- K/ |6 H) s
public void agentStep() {
' `1 z3 Y4 x' d0 B$ G System.out.println(id + ":" + Globals.env.getCurrentTime());
5 o- F# e7 R9 E }
" a) X. k$ n4 n0 E0 t}3 O1 g6 t% _/ m* W
0 W) p/ M6 J7 }- Wpublic class ActionGroupDemo extends SwarmImpl {
?* X. w& b- |. r ScheduleImpl schedule;2 k: s+ \; F. A7 N% Q6 A+ Z) u
ActionGroupImpl actionGroup;6 ?( Y* b% l# H( A
ListImpl list;
4 T: O8 \ s; {" d0 ^9 F char Id = 'a';
R! F( L2 o" G S! t4 a# \; O- v. K0 N6 {- l% j Q( M; _1 c
ActionGroupDemo(Zone aZone) {' t7 P w* Z7 O6 @8 f5 P% F
super(aZone);# W! Q2 Q+ y' X9 u5 [
list = new ListImpl(aZone);7 P3 e* {+ P/ S. n) G- s5 {% j- B1 p
swarmSetp();
2 D5 w- U6 r9 q* a actionGroup = new ActionGroupImpl(aZone);, d+ O$ Q s! S) ?
schedule = new ScheduleImpl(aZone);
- m1 m4 ~ h8 r: B' g try {3 A7 \8 L# w! g% w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. j, |4 c0 C" f Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 X' ~) {3 v3 ~2 E: K z
: U( ~8 W" t4 b; _ actionGroup.createActionForEach$message(list, agentSel);6 a& S h5 V# a% \4 J: }+ O( L8 k" B$ P
actionGroup.createActionTo$message(this, swarmSel);
0 r% P3 p+ ?# l- D schedule.at$createAction(0, actionGroup);
3 F4 i5 _0 u i& T5 w2 v schedule.at$createAction(1, actionGroup);
8 ^* w% j; f: a) _2 U- e4 j schedule.at$createAction(2, actionGroup);1 s9 C) R' i3 G4 \0 D) Q) a
# H; E6 u& b3 F4 P7 J/ z K
} catch (Exception e) {1 B* r. G9 i8 Y; c) z
e.printStackTrace(System.err);
/ A* y' H/ O5 c- ?9 q: N9 X //System.out.println(e);
( W; Q8 p9 m- F7 L0 y System.exit(1);9 {) T H/ a# H% S; f7 P; {
}3 d- z8 d8 Q2 j: I# P
& ~- b& }. _) w+ Y- M( _8 `- u1 I( E5 o9 o b* T
}
/ m$ D* v4 Z/ V T& b& e7 V) K0 j+ m2 j' J; w; ^! Z& R4 m5 D+ ~6 Q; ^
private void swarmSetp() {
9 @+ N! W, v& B list.addLast(new Agent(Id));
( |& T& M/ Z6 E. ], A Id++;
/ \9 b* q0 V' v+ ~9 b# ~: c! ? }
* L& U* X2 w' V* h# o1 K! f R1 @, a5 c
public Activity activateIn(Swarm context) {
- Z+ o- Y# d1 T3 m super.activateIn(context);
+ e$ ^3 U ?' n schedule.activateIn(this);
+ u, f3 v6 F8 m f2 T2 C return getActivity();8 C3 I+ Z0 F8 G0 L4 b6 ^% N
}5 N* j+ |; ^1 Q! k
# g; I1 K, n( e: F' O public static void main(String[] args) {& ]7 _3 Z( {$ f! L) R1 T% G- q+ Z" k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ ~' ?9 E' B- S& v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ r8 K! C' {* j- t' X) w7 T swarms.buildObjects();& e3 m, p7 i8 V O
swarms.buildActions();+ b# c) Y4 W" ~" x& }: ?& R
swarms.activateIn(null).run();
8 _$ D* r6 {% R. E# u }
4 e( I0 }: @, V1 N0 W9 m" a0 L3 L5 b
} |
|