|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ P5 g9 x5 J# C6 A
4 \) M' V, S- [- q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- t6 ]1 d& |! t+ l" _8 h* x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., N: P. A! {) G$ B% T: r) W
swarm.SignatureNotFoundException6 [; c. |' X! l" l+ l6 R
at swarm.Selector.<init>(Selector.java:76)
7 v* ^) P6 I! N- W at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ v& Z2 k, W8 I3 [+ @
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 W" y* J; ^# W4 ]/ T. U
& T; j# }/ i# M2 d4 A+ `. f3 |1 x8 H. ]2 j% t3 J
import swarm.objectbase.SwarmImpl;0 i- c+ n, B" @; z( F- Q( [
import swarm.objectbase.Swarm;
; K3 I* H: W8 c4 P$ y0 }5 D( K4 L j9 fimport swarm.activity.ScheduleImpl;5 U7 g) f" ~6 x# {
import swarm.activity.Activity;
2 ]5 Y3 b* f9 X- d5 ?import swarm.activity.ActionGroupImpl;
9 k2 Z6 u* E" I8 T: C0 oimport swarm.collections.ListImpl;+ j1 } G" X! l1 X! r7 i
import swarm.defobj.Zone;
. d, h9 v# ~( v$ i9 @import swarm.Globals;
3 V5 e2 J" }3 I# Nimport swarm.Selector; U$ }" S3 p0 k( H' m' N
import swarm.activity.ActionGroup;
. g. U& p+ E1 Tclass Agent {
% K4 Q; J6 ?. y; ` char id;
$ G+ U% E( I2 O5 V/ X. }
# {8 x1 D. ] W1 u3 q" J Agent(char id) {( w: P: |& E/ {/ j: ]
this.id = id;9 x/ G# j7 O* j: E
} S9 ~( i1 s h3 Y! Z. L0 D
/ ?9 {1 I9 r7 @ P, |2 @0 n7 O
public void agentStep() {0 E) ?# |3 S% N
System.out.println(id + ":" + Globals.env.getCurrentTime());
% a3 D* \6 M! z" O }
" w* v! G% I5 n! K, B7 O; p2 ]% v}. X7 Z3 L/ H* h( [" I& B/ G5 W( R
' s- u( h5 D" g( \# ?" i+ Lpublic class ActionGroupDemo extends SwarmImpl {* l, p7 H: f6 v
ScheduleImpl schedule;0 [1 z( ?) [5 A& J o# e
ActionGroupImpl actionGroup;: e( c+ ^" c: u3 X8 A7 C
ListImpl list;. ~( I6 o6 R: Q* p
char Id = 'a';# L0 C$ U; `9 s0 |: Y) F2 X
4 ~( D5 \- f% e; A i* G4 M ActionGroupDemo(Zone aZone) {! W9 {. k i1 c, I9 \, P
super(aZone);
/ _4 C/ [5 @1 l/ l" C list = new ListImpl(aZone);
! o% m3 c6 D6 e, [2 }2 A9 o swarmSetp();# {, N9 a K# V( t5 ^
actionGroup = new ActionGroupImpl(aZone);; T# q. V, k) S7 e$ G$ Y
schedule = new ScheduleImpl(aZone);7 T; h z1 h: E& B. ~
try {
# N7 A- R- B: F1 @ Selector agentSel = new Selector(Agent.class, "agentStep", false);4 Q: ]$ l& T) ? L3 ~+ c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 t2 G8 {' g; c8 A6 n Z
j( N- z. y. Z# c7 u actionGroup.createActionForEach$message(list, agentSel);7 O8 ?8 n8 H- Y$ \( W, q) x
actionGroup.createActionTo$message(this, swarmSel);4 U! o( O+ P- r* _1 y; J: F! F* @
schedule.at$createAction(0, actionGroup);7 \ J. J( G; s/ g
schedule.at$createAction(1, actionGroup);7 j$ d6 @2 o) D5 |" W0 d% C- M
schedule.at$createAction(2, actionGroup);' j" Y4 `$ {' u) Z' z. O
: y+ e! k# j" | ?* X7 }
} catch (Exception e) {
& Q) r) x$ u. y6 O& J e.printStackTrace(System.err);
9 ]3 h2 U3 M: a4 ] //System.out.println(e);
2 h H# ~- D* p. X# m2 N4 z& V System.exit(1);: r9 N- W( B7 {
}
5 H& {' {* V0 R* o0 N p( j- l4 R w0 B4 _3 x4 F# Q
% |6 Y) w- R5 ]4 x8 }4 m, `
}8 z) F$ P. \% Y$ v" p
5 @6 _; c5 C* {% q4 u* X' q
private void swarmSetp() {
2 K8 A# z }2 c% v6 s/ l list.addLast(new Agent(Id));
$ a" ]& \! J A* D Id++;
' W+ w ]& s" s0 Z+ M }9 j7 k4 u6 M! |0 J7 G" o7 j
% B% S9 U+ y0 ^, q1 C% R6 K public Activity activateIn(Swarm context) {
7 G3 \" H# i# d super.activateIn(context);0 }# _4 U& Q. h6 A# t7 C
schedule.activateIn(this);
0 Y2 L, A! w; F _ return getActivity();9 c3 J) `( ~# U
}4 U/ y5 H2 t; R' J, x
. V8 {# l' _3 b! S+ f public static void main(String[] args) {
. \! q7 C; E2 a! M$ \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' R. `% m+ f% C' v! A3 @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 T3 j6 c6 }8 E9 \$ s
swarms.buildObjects();
' ?9 g: S; A6 z# y swarms.buildActions();8 ?( `/ b& y6 |4 q5 s
swarms.activateIn(null).run();: b/ J" A' d* h% F
}6 H% M, e; n' M2 l# q
1 w% [6 }1 I" @
} |
|