|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & E$ Q0 z! o; p h3 Q2 P& j
! W$ f8 |2 }; n3 ^! g6 D/ V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* X- R, |2 y p+ V& z9 f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., W5 D/ Q: H8 b3 {4 v
swarm.SignatureNotFoundException
3 _9 _& M# ?4 g/ U4 |+ D at swarm.Selector.<init>(Selector.java:76)+ Y% P7 p O3 F, c6 C9 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" v: ]0 w5 i/ M/ ^8 k& g6 `
at ActionGroupDemo.main(ActionGroupDemo.java:67)* m( [0 K9 T- @! v1 g3 B
5 L1 H6 j- x$ p' a
! S! \* w- d' K; `$ \/ R1 z _. Nimport swarm.objectbase.SwarmImpl;2 m3 _$ A. \! t
import swarm.objectbase.Swarm;
& r C' _5 Z. V' r$ N4 ^. Qimport swarm.activity.ScheduleImpl;
; s7 Q2 ]% }# O; X7 A! rimport swarm.activity.Activity;, Z, G0 \4 D# q; [$ R1 ~& Q8 A
import swarm.activity.ActionGroupImpl;
S9 b/ `* p* h* timport swarm.collections.ListImpl;
( O4 q4 W) r! H6 O5 W% Bimport swarm.defobj.Zone;
/ \5 i2 z @! [import swarm.Globals;
0 } U- T6 l3 s9 Y7 gimport swarm.Selector;
% h3 v" U' N- A% [! Bimport swarm.activity.ActionGroup; ( Z/ t. D* ?5 b& l" U
class Agent {
# W$ g+ e6 V: A6 b: \% a char id;0 i# d. j/ g* @+ L3 N: ~' u# {
1 G' ~: k) r. T. ~3 Y0 x Agent(char id) {
$ a9 G& {0 Y. a4 Y5 D" e8 q this.id = id;
# W& i* O) K( F0 j! R }7 f/ z; A U5 G. C" K
" H9 e. q6 _+ R. ^& m
public void agentStep() {6 n/ ?* G2 T' Z* \6 x, E4 [
System.out.println(id + ":" + Globals.env.getCurrentTime());1 |* P9 Q u6 ]+ O
}* ?, A9 R1 z% d8 A; c
}
" K$ o& l) p7 |5 L- b$ C& _" p
) v+ n9 w/ Z9 c( K8 i- {public class ActionGroupDemo extends SwarmImpl {/ Q6 f/ U) `: Y
ScheduleImpl schedule;
& j$ S+ T; Q& j% N" y2 I. Z0 w ActionGroupImpl actionGroup;; v9 N! ~' h( G
ListImpl list;7 g. m3 [' P7 R2 d! i
char Id = 'a';
3 |( [) _- s" d# D: h8 C% B
. `2 L! w& A; Y+ i4 r) K9 y ActionGroupDemo(Zone aZone) {; T$ P5 k3 J' q
super(aZone);" l. }2 y0 X9 p) v& @
list = new ListImpl(aZone);: W! r& _; |1 x6 v' D( H
swarmSetp();+ d1 S4 ~+ O r% b! L
actionGroup = new ActionGroupImpl(aZone);. } h; j7 _& f P0 a2 m0 J# r
schedule = new ScheduleImpl(aZone);/ R4 q1 C- b8 K# f" r! x1 ]
try {
6 D/ ?6 k5 V: P6 i# Y$ ~% S% L Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 Y+ v4 f2 Q5 L7 b" H+ n- b! B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% a5 |" _9 P! \ I 2 \ q* a" L: a* e$ y
actionGroup.createActionForEach$message(list, agentSel);
, D7 Z9 t( F; }9 v5 x actionGroup.createActionTo$message(this, swarmSel);
6 u; b4 u# p/ d4 O- a schedule.at$createAction(0, actionGroup);
4 k' r) e7 A1 H: A* f7 q, n schedule.at$createAction(1, actionGroup);
% a- K0 M9 x2 C+ z' F- E schedule.at$createAction(2, actionGroup);8 g& ?+ z. G! V O
9 t l0 L4 k, x+ h
} catch (Exception e) {& I! |4 F3 I2 F1 f* a) x! m
e.printStackTrace(System.err);& L/ h8 } m# e' ?4 a
//System.out.println(e);. l) [/ K) X0 g$ t) X q
System.exit(1);3 N/ d2 @/ A0 O
}3 d+ r5 ^/ _1 _. |- P" T, u( F; ?
7 o+ y6 p9 Q! O8 V% \
2 o0 K, p3 ?# D' h* q" X9 u
}
' [% ?+ E8 A% m3 _
6 g5 T' L( ?8 `# x6 B& |+ {, b private void swarmSetp() {
5 J+ E! x0 Z7 k4 H1 t7 V+ }$ \# h list.addLast(new Agent(Id));
2 c4 P/ f( \! ?7 h" C Id++;
! V D3 \7 v, v" { }
/ c7 n6 R w0 u( B$ z# ], q
2 G# J# @! o% @, c3 k0 T- P public Activity activateIn(Swarm context) {
$ A. B7 I: Q& A" }# M super.activateIn(context);
6 U6 b! t/ C" ~1 G5 c, Y' k schedule.activateIn(this);
1 y* X& b; K: J! e. s return getActivity();
3 x8 ~% r. @$ E" T5 r9 I8 E, b& f, k }) g5 t5 c, H' r! p3 Z
! O$ @7 Z# t2 o+ ] public static void main(String[] args) {
2 \) D7 _- E5 Q6 T) z/ N Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ B' m2 u; R5 w+ g$ K: R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 N0 ^( g& X' C+ A& w: }
swarms.buildObjects();
! N9 D# s' g c/ |8 W0 v# p- s( ? swarms.buildActions();4 {8 z" [/ a$ X+ x* O; V' R
swarms.activateIn(null).run();
; N0 Y; G$ y$ R+ {% `$ L4 L1 X }) W/ e) R% _0 I9 F' D2 p5 V8 ^9 j, H
' Z$ W1 g1 v( q4 y
} |
|