|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% p4 d3 T- r' C# L; V+ X
. j, n* ?6 y( O2 c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 C" A/ K; Z- v( G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! u- r6 m- ]/ M/ Z6 qswarm.SignatureNotFoundException
0 X/ a0 @5 K7 K0 O) _9 W3 i at swarm.Selector.<init>(Selector.java:76); ^9 V6 P/ X' X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 ~/ Z9 B1 D5 P: }! t# ~
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. c! i M5 [2 f6 b' ~! R/ P1 M0 u
2 g+ g6 Q' O$ o$ t/ T1 ^import swarm.objectbase.SwarmImpl;
/ E, {$ j1 X6 H: v8 \import swarm.objectbase.Swarm;9 c$ J9 L6 H! E
import swarm.activity.ScheduleImpl;4 q' f* M$ Y$ R$ q `
import swarm.activity.Activity;8 q! {1 B8 z, C! |+ {/ ^
import swarm.activity.ActionGroupImpl;
3 T8 g$ N0 J( k5 |( b1 yimport swarm.collections.ListImpl;& U2 V: C( A+ v5 G& a6 Q
import swarm.defobj.Zone;
+ {! D. F5 f7 Y: H9 x1 eimport swarm.Globals;
- n; ^9 f. @$ r# k+ ]import swarm.Selector;
! ~, U6 j* H- |- Kimport swarm.activity.ActionGroup;
4 m' n; H/ h2 l" Vclass Agent {3 N, K. i9 `' ~; h- I
char id;1 D: ~; ?+ U, t, i) B$ E. I! ]
* `; W- R3 Q# V: {; `
Agent(char id) {' W% ~0 l9 ^ |7 O) R# A& z
this.id = id;
7 c% w" j% {/ L$ _# L0 o+ l }1 | b/ c6 C* [; U* |. u
3 ]' w7 q5 h0 C' V3 U" p
public void agentStep() {
$ r z( Z9 D3 G+ {1 ~ System.out.println(id + ":" + Globals.env.getCurrentTime());3 v9 E! V7 c/ z
}
, [/ |% X' u% c: S- c/ R& T, {1 Q}
8 P/ L; v H4 @5 I# v( \
6 f4 C: h. E0 N7 Y5 Gpublic class ActionGroupDemo extends SwarmImpl {, J1 f" E1 \( N9 R- R
ScheduleImpl schedule;
2 k- F7 o( o! i: |7 Y ActionGroupImpl actionGroup;) [; W5 n. n" T3 R/ X# H9 p
ListImpl list;2 O4 i- q+ Z9 s( ?
char Id = 'a';
& y, @+ Y3 n, I4 h: y* B6 |+ _: U
) k1 G" b- c3 A& i* O. \ ActionGroupDemo(Zone aZone) {
" X+ y& P0 B" p: D, V* y3 ~6 G" V# Y/ z super(aZone); c+ p( `: W& T0 C" i) s
list = new ListImpl(aZone);. m6 k7 D! ]" y
swarmSetp();
: Q0 F- W+ W$ V w! W$ X# L actionGroup = new ActionGroupImpl(aZone);
. Z) z `) O& k* X" U: e' I; [& g- x schedule = new ScheduleImpl(aZone);
w: s( R3 @# f! `3 \+ X9 ^ i try {& P+ A+ s9 j2 v3 p1 I& O! \
Selector agentSel = new Selector(Agent.class, "agentStep", false);; n% f8 I6 Z* D% K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 w( ^ v/ J- E) G" L H1 Y & ]: ? H _; M
actionGroup.createActionForEach$message(list, agentSel);
6 G! G, b& J6 [1 O- U) N% k4 c# y actionGroup.createActionTo$message(this, swarmSel);0 B* o6 u. M2 L! q4 f' c0 h+ Q" V# s
schedule.at$createAction(0, actionGroup);
$ e! O' _* Y. q9 y4 d schedule.at$createAction(1, actionGroup);
/ k4 Y, }' B. h. T0 h# d schedule.at$createAction(2, actionGroup);/ r, y% J/ R0 ^4 S$ t
$ X G% Y+ _5 Q } catch (Exception e) {0 z- G: r1 _' j/ s- w, ]! t$ v8 O
e.printStackTrace(System.err);6 Y! M( [. I9 A' Z1 F& I
//System.out.println(e);5 g$ Y1 W+ j/ T* k# Q5 \. e
System.exit(1);
2 U9 Z8 |- C! v( ^ }
2 T7 u* Q& j" x; y1 z+ {
) f* S; q' Y6 @2 X& K( x. K/ Z6 [/ K. f
}
5 {" D/ R$ p V* ?. J
{2 `& Q" m& _$ b private void swarmSetp() {# ]8 }; @+ s. J$ a' ~9 C. G
list.addLast(new Agent(Id));; Z5 E8 Z" o9 P' p
Id++;
' u: ]7 J( _7 u3 A }
8 P T; }1 O! L# i* D5 ^2 o0 G# y0 Q) _$ x
public Activity activateIn(Swarm context) {
j- U, n& I% k super.activateIn(context);
; j: |3 Q7 p- D5 o( J6 c4 z2 g5 Y schedule.activateIn(this);6 u% D. c0 P8 N) K
return getActivity();
! {9 E7 d; e5 S/ a }; g- F' i% X' e" l- v P
# q! K& i T; f. r- h1 o" G
public static void main(String[] args) {: q% i L& V7 M' Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 W& G, g7 ~ n B( W- d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" o+ y3 ?2 O: C+ }( ~ Z8 D swarms.buildObjects();: C. i" V! @4 ^
swarms.buildActions();
3 M2 U8 A* _9 X# ~4 A, w K swarms.activateIn(null).run();4 T! V% l1 t I4 I2 g& S9 ^
}( f+ y4 j3 r9 _
8 d7 r) u: [+ u3 f& ~" d1 L
} |
|