|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # z' j% K. ^2 X0 O7 Q
1 u1 p4 H2 M/ b) V, v& X+ E# r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 l8 g/ m5 c$ m5 E5 G) R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 x6 a( l3 i7 f, l1 k
swarm.SignatureNotFoundException4 c. e! `3 A5 }' o+ @$ L/ F7 c
at swarm.Selector.<init>(Selector.java:76)2 m" R W& k( | W( S( ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) L+ m9 Y( C. C' w! h
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( L. \1 G9 g2 z, j! F2 r5 r+ K
- ]1 n6 S$ H6 B3 [- limport swarm.objectbase.SwarmImpl;
| r0 E0 u2 g# x; [) `. I. n6 Y/ Kimport swarm.objectbase.Swarm;
T0 p2 P+ j' Qimport swarm.activity.ScheduleImpl;) U: U# s- B# O
import swarm.activity.Activity;6 Z) u2 q7 q9 _! d9 R! w
import swarm.activity.ActionGroupImpl;# x @2 a: w T* W% L2 Z! P- S
import swarm.collections.ListImpl;
' `" o; A0 c/ b: ^# bimport swarm.defobj.Zone;
9 H/ O' I9 B' h4 t! t6 O: Rimport swarm.Globals;
8 T; d- O J6 _& i, o2 O3 Fimport swarm.Selector;
8 W- p2 n' M6 Wimport swarm.activity.ActionGroup; D! V0 ?! U* j. v) V' n' n+ L6 n
class Agent {
/ ?( s6 b; Q ~ char id;
- w% B; r _0 l. s% M; R" m- ^' N& g4 q
Agent(char id) {
b5 G# i1 Z" O( V! `- U this.id = id;* Q$ n, ^8 ]( J: p" [
}
; T6 x8 i8 o4 g9 c2 f0 T0 X% \: P& [% A; m' }& y* g' i
public void agentStep() {# d, F9 ^$ e. {2 O% p
System.out.println(id + ":" + Globals.env.getCurrentTime());1 \- Q( L) \; L6 V
}
c0 ?3 L' ], @! I8 @. `. |}
1 l. U- ]+ v4 k/ ?7 C5 B; l2 D" ?7 F0 l+ G* O2 b
public class ActionGroupDemo extends SwarmImpl {
" x [+ @# @ ^4 u; r ScheduleImpl schedule;% `' `/ Z t$ m% O8 I
ActionGroupImpl actionGroup;- d0 D: q$ d( R% y
ListImpl list;6 `, H& H& W# S" O) N2 [( E' U' ]3 `
char Id = 'a';) s" g' {; v7 i3 F3 m% U0 p
4 r; s! P+ D* _ ActionGroupDemo(Zone aZone) {% W" ~: |+ x M9 O/ A: q- }- {
super(aZone);
# T l2 x$ T2 X C. R) C+ c) c list = new ListImpl(aZone);
- m n! |( V/ M* j swarmSetp();
0 K1 X" x. p3 G, a$ R: a9 i6 x0 u actionGroup = new ActionGroupImpl(aZone);
* C. g3 n6 w- s schedule = new ScheduleImpl(aZone);
( u2 h$ Q6 H( {; k m; i try {. z; }/ P) M) e2 w9 ^
Selector agentSel = new Selector(Agent.class, "agentStep", false);( Y5 J9 K! Q( F, S0 k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ d2 Q9 C2 }( x& M$ a0 S# n
1 n7 v( f0 d) s3 u9 K' F actionGroup.createActionForEach$message(list, agentSel);+ l, X! J- ?- ~ N5 N
actionGroup.createActionTo$message(this, swarmSel);: l' I4 n! y, s* }5 O; p
schedule.at$createAction(0, actionGroup);
% x% W. x! n# ^; ]) I: k schedule.at$createAction(1, actionGroup);0 k/ y1 t# X4 {1 Z+ {/ c5 k
schedule.at$createAction(2, actionGroup);& u1 Q- N/ Y$ }! G4 P1 O+ I
4 K- t5 T. e* |6 d" W } catch (Exception e) {
! @# m3 V7 f0 G, [3 C e.printStackTrace(System.err);
u! ?) Q5 Q1 U- B" H/ Y //System.out.println(e);
$ X8 U6 h+ H5 g9 g+ b9 M/ O System.exit(1);
6 x! z) |$ o. |7 o2 W5 M }
/ o% F4 e0 f. O2 ^
8 l6 ?" Q' `1 C- G7 L7 f7 \5 b, K
- E- D: K/ K! S* u: o0 x4 v1 p }5 a( \9 j( Q( S5 ?
. ^0 H# z7 {: c* a3 S private void swarmSetp() {7 d* m; H# q% Q8 w. @% C
list.addLast(new Agent(Id));. P b, }& ~5 Q) L
Id++;
7 r# t9 _6 g+ m8 K }
& \. K" Q+ j- K5 r, \9 f" E7 x1 h( A( m+ U6 R1 s) ~
public Activity activateIn(Swarm context) {0 x/ s0 d' k# r, @) B8 z% R" w
super.activateIn(context);
# z$ T+ F8 L8 s! B schedule.activateIn(this);* y5 W+ n' f! N3 K
return getActivity();
, K! ` z, V$ q }
4 V3 T2 Q) d) ~' D. O; o' L2 T% o/ r8 H+ g
public static void main(String[] args) {
0 {% {6 Y3 n; ^' L Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- n% |7 R5 X6 S' D* [# m: v, | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ o; |$ W* o; d5 Q8 J. v swarms.buildObjects();4 V7 u; P- B/ a4 x- X H0 V
swarms.buildActions();
- ]" G: [: V6 l0 g: a; w' ? swarms.activateIn(null).run();
) D9 a4 o) u. A# |+ y' H& W- M }# Y1 u) L2 Z. I
9 S* i; D9 G: w7 h0 g( Z1 O& S* @' ?} |
|