|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* b8 x2 [( P o& G8 B( K+ g
* d9 V0 k8 A3 h/ t. b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 w# W5 F" X' w' l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 a3 V ^ |. P+ Cswarm.SignatureNotFoundException q0 V. B5 W" l+ @9 x' w
at swarm.Selector.<init>(Selector.java:76)! @7 ^0 E" ~+ K( _; \! E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 i9 I p) [; L/ D* ` at ActionGroupDemo.main(ActionGroupDemo.java:67)7 k3 f, A& g$ S/ _+ B* X
+ ~( H( o& {8 M+ t
! y2 l4 x5 ^ }4 S2 d# ?$ a: zimport swarm.objectbase.SwarmImpl;
. w! p$ j; s8 b% N) R$ p; `7 r5 \5 kimport swarm.objectbase.Swarm;
2 y% G2 n! @6 v; X3 y C3 ximport swarm.activity.ScheduleImpl;
* g/ \ @6 m4 v8 W% ?+ vimport swarm.activity.Activity;
9 J W$ ^) E- e6 y& a8 r5 ]import swarm.activity.ActionGroupImpl;: K' k' i, t1 o. s
import swarm.collections.ListImpl;
( J0 `5 T9 l* Dimport swarm.defobj.Zone; & V, E1 U& M/ U/ K
import swarm.Globals;6 ~: A4 v% Z* j4 x: ^0 ]
import swarm.Selector;+ P; L2 Y( w0 r; u- Z, u& S1 c
import swarm.activity.ActionGroup; ) [( Y: g5 H, G( f+ S \
class Agent {% R, A$ _* ~) n2 Q. H
char id;
$ s, s5 r" @& G: k6 j9 w% N% L: i9 [6 q7 B
Agent(char id) {
* e' F$ ~. g! M5 E this.id = id;
' y! a1 N6 w1 a L' ]/ n; \ }5 @- q0 |( A( }; K7 Y& g$ n
! @( M. H* k- n+ K0 Y8 h F public void agentStep() {# `- C0 @ `1 o: R! \
System.out.println(id + ":" + Globals.env.getCurrentTime());
/ ^* m2 h+ R) a1 ?. }/ | }
$ U/ ^+ } U# I9 q) d}
, J9 |/ {" \* r$ Z& L5 }- |; b
" a/ J( J4 V6 i# c4 [! ]public class ActionGroupDemo extends SwarmImpl {, i- j1 V/ y, i
ScheduleImpl schedule;
4 ]% h+ J5 n" G6 g ActionGroupImpl actionGroup;
+ y6 a# L( F' z) F; _ ListImpl list;& \& e8 C( \* A# ?; w$ N
char Id = 'a';# x! ?1 l" a6 I! \( E3 M
9 z2 x* I1 {. @8 o/ \1 W ActionGroupDemo(Zone aZone) {* N0 e# V% y- C% {) K
super(aZone);: n1 n, A0 X' N* x
list = new ListImpl(aZone);
9 q5 T$ c; x% ]) e. I swarmSetp();* V! g9 a3 H: K
actionGroup = new ActionGroupImpl(aZone);
% e$ [8 D6 E! |9 H+ l$ r schedule = new ScheduleImpl(aZone);
9 z* L$ r" S% i0 x& k( Q' E try {3 s) Q- }8 ~9 r% [" z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& ]) }& I! h c8 H# b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. t% \! g/ V; T: @
: {3 X/ z# \) O1 G/ m* P7 b actionGroup.createActionForEach$message(list, agentSel);+ O6 n) u0 ~* p e
actionGroup.createActionTo$message(this, swarmSel);
; R6 E. q4 n& Z1 N5 T schedule.at$createAction(0, actionGroup);" G1 |) j3 c, v( r
schedule.at$createAction(1, actionGroup);
X% s, U% u- M0 c5 I+ B8 Z schedule.at$createAction(2, actionGroup);- _7 Z2 V: p _8 g: z5 f; l; w4 c
, U. j# }1 l' n/ P( J } catch (Exception e) {9 M, V9 [1 l' i
e.printStackTrace(System.err); |6 w3 ~6 x& I# o- |
//System.out.println(e);7 W& }. A: c% k+ O
System.exit(1);: L8 n$ e/ [& s# T* C$ G a# D
}7 T q2 B! q# a5 i( L
6 e- b5 `7 ]$ g; D3 U5 x7 W
7 O4 i( o, B* }1 ^
}
9 Q/ B6 e2 i8 [! F- y' F$ l( v' h4 A p- a Z0 F
private void swarmSetp() {
; k( ]! B' o( F F' M) r, l list.addLast(new Agent(Id));
4 O( _2 o [$ Y3 c4 D ^ Id++;
3 {3 K+ o/ Z" g. K% l% U- { }+ H/ q+ ]1 v; h2 _9 l* }
$ }8 r; K" E: A% Y Y& p! p
public Activity activateIn(Swarm context) {: M2 t3 ~5 b* K) S& y) m# g4 K1 }
super.activateIn(context);" D% ?4 x+ X, ~$ c6 }3 Q
schedule.activateIn(this);
& U) i4 N$ n- ] return getActivity();
0 h. e5 y* t1 m" f w. s3 I7 K K }$ i+ D* r' ]' ]9 f8 H
" T% y9 l1 a0 }: j8 c3 B8 L4 G6 U public static void main(String[] args) {& V( L- B- ~2 N- B( `" Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ z9 R* \, V/ w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( q9 A' Q! Q9 j5 v; C+ _, _ P: I
swarms.buildObjects();
3 i' K" g. z8 {# q swarms.buildActions();5 D: w* g% V! ]! v2 i# G; p4 F
swarms.activateIn(null).run();5 l' N- r" F# j8 s( s4 `/ r
}
" r+ @' v- z) F2 ~$ [8 i: d6 I5 u8 N. t7 d0 w
} |
|