|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ V' X* Q! q* v: ~
( A* V$ w2 H7 F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; I# w+ j$ _9 e) E0 ]! F5 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( {; _ l% t% L, Z- d3 x7 Vswarm.SignatureNotFoundException
! E/ h# I9 \, g& |$ k) M& b5 x at swarm.Selector.<init>(Selector.java:76)
, x6 X- ~3 p! h y% B at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ }7 z4 p; P" { }, o0 R# \# s s
at ActionGroupDemo.main(ActionGroupDemo.java:67)( x: z( u$ E2 N
1 C( \3 C Z5 y. n0 @7 [* E
1 M7 P7 S- f9 [" Ximport swarm.objectbase.SwarmImpl;+ ]/ F, ?* O3 e# G
import swarm.objectbase.Swarm;
5 U6 \9 V a, F* pimport swarm.activity.ScheduleImpl;
l, h/ k& A, fimport swarm.activity.Activity;* J7 f7 G& V) B6 `9 q- Z6 e
import swarm.activity.ActionGroupImpl;6 t: s# A9 I5 N5 d
import swarm.collections.ListImpl;
6 S# W0 q/ |+ }4 c7 q5 v5 Himport swarm.defobj.Zone; 0 o6 q' r- ]2 n
import swarm.Globals;7 g( W0 m2 P1 Z) e( R
import swarm.Selector;" ^0 C; v% L: ~# ?" _
import swarm.activity.ActionGroup; + h& h% r- @2 S! A3 @- m. a
class Agent {
8 R3 p- m' O- E, @' {; S4 s9 ] char id;- l: ~% H' \& G( L v) h/ m2 V
1 Q6 q2 _' S8 Z; \0 O+ L Agent(char id) {
: U, A/ q. h! S this.id = id;
( G/ \' c0 T9 A3 b( n }
x+ G/ f7 ~0 O, q8 B. a& d6 [& r% `( j$ J; v
public void agentStep() {& {/ c( D1 g# y0 }. z
System.out.println(id + ":" + Globals.env.getCurrentTime());& J: v. u: F) I$ K6 M4 \/ s
}
Y* i: u$ X2 b1 b3 C/ V3 C}- k T7 b- Z) x3 c- B3 F9 r
i8 Z C5 X7 r# `9 Z/ ?4 i
public class ActionGroupDemo extends SwarmImpl {; L. S' j2 p1 y$ V0 m( K8 o1 @
ScheduleImpl schedule;4 g- z1 p U: ]9 k: F
ActionGroupImpl actionGroup;6 z, q/ ~5 @5 \* q' a/ H* o
ListImpl list;
( ?% s* Q( g" f2 n, q1 E# F char Id = 'a';3 D; D5 y7 t+ R' O3 X
' R1 _+ o: D3 i, I: D" ?6 G7 F% E6 y- k
ActionGroupDemo(Zone aZone) {; u$ S2 C' f7 a0 M H8 M4 r" r! b
super(aZone);
+ z. M% @7 i! O' {3 u) h" ` list = new ListImpl(aZone);
# V3 F" F* x! M4 X4 L* k0 V7 S+ S% z swarmSetp();
! V- V# ]5 H6 J# b) U actionGroup = new ActionGroupImpl(aZone);- p- g4 _' T1 k+ [) g
schedule = new ScheduleImpl(aZone);
. K& R+ B( K3 Y7 f try {
: R, w2 P$ Q' l1 c Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ M& i# y4 q* A: i Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 _2 M8 N u; |/ A0 h. J 9 G1 m* x6 |# }# H" u' c
actionGroup.createActionForEach$message(list, agentSel);; M6 b1 {: S& t' C
actionGroup.createActionTo$message(this, swarmSel);
. `# }4 O/ Q* y% C/ [, L schedule.at$createAction(0, actionGroup);5 ~9 M9 W H- m& B- m3 z
schedule.at$createAction(1, actionGroup);
* O" J% Q( t: U* \0 Z schedule.at$createAction(2, actionGroup);
8 k4 t0 C4 x, r: `5 h5 r
3 p# F0 W! a' ~- G% ?: l( _( P } catch (Exception e) {
$ |/ J( B; M: {% Y e.printStackTrace(System.err);
# p5 }; u# s* r5 s# U //System.out.println(e);
2 H* I/ W7 |% D4 }7 |8 Q- D System.exit(1);3 E4 P' f8 w& Q
}- {/ P3 D C0 k6 L! u G
3 t+ D' u! {, C# t) G6 v
- Y, O# ?* k% m }
. u' v0 r) G4 ]. D. M
; I# R4 r5 n1 x# ~ t private void swarmSetp() {( p# d) p3 d' f0 M+ R% b1 R. Z
list.addLast(new Agent(Id));! k% v' x1 D/ E
Id++;
+ Z; i6 H7 L$ I& s H4 a+ S b }
$ M3 W7 D1 w% M' C( t4 i4 {* d4 t- }2 { I
public Activity activateIn(Swarm context) {8 q" \! ?2 ~" c. a' ` h
super.activateIn(context);/ a, v) E* g+ o9 G n% ]9 ~
schedule.activateIn(this);
& z% u; \, l! V& ? return getActivity();. O9 p. l$ G5 q0 g
}& G" Y9 V8 M/ V1 ^: E! D" d
% Q; P/ a8 M8 _( K: d0 h; z public static void main(String[] args) {5 \3 m# a# H: Y" X8 S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( t# ?$ l* v. W- O7 [1 _! ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% v+ [6 @7 q( _7 X' O, V' { swarms.buildObjects();. Y) S4 a9 w! ?" T: H M
swarms.buildActions();! u1 B) T; t, I. {. E- j
swarms.activateIn(null).run();
3 s7 H" T. G& s/ t- T }8 F7 V f0 K& g N
1 R' n# s; D% Q# u$ Q5 b# p8 U} |
|