|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* K7 g: c- l* u+ P& B
( d+ j( F- B- n& R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% b% B& x2 @: a- u2 P0 f3 E2 R" N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ @: v% q: \$ ]+ |4 `6 I" qswarm.SignatureNotFoundException
+ M) V$ s. R& X at swarm.Selector.<init>(Selector.java:76)
/ N7 f7 V; Y$ O- p* p, D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 C, `+ ~) w2 Q/ L8 e at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 P+ A& t% M" m9 K5 H2 {4 F l+ @; A$ }/ d7 M/ {
5 C. T& q: g2 c* j; R6 J
import swarm.objectbase.SwarmImpl;) s0 x8 v! I7 ]0 M3 C
import swarm.objectbase.Swarm;
& B6 j* q0 U# P E F) cimport swarm.activity.ScheduleImpl;
- S& b- i: p6 r4 L# J3 X2 Uimport swarm.activity.Activity;
) E# W- I8 V# w/ _, ]+ w; Dimport swarm.activity.ActionGroupImpl;& H; v+ \$ ~4 t( X7 U0 d" S& H1 p
import swarm.collections.ListImpl;) W) D1 R1 ?( x6 @# {+ g
import swarm.defobj.Zone; + m" ~4 L c; p4 c3 `
import swarm.Globals;
% S5 z! u, U* k2 Bimport swarm.Selector;4 e7 M1 c4 q( M- l; Q8 s$ x' w
import swarm.activity.ActionGroup; + K* X' p) y" G1 c: i
class Agent {# M/ B' `( G( Q' |( Q' Z L
char id;, D* o) ?* f1 x: v& F0 H( w
6 {$ S) H }4 v" Z: q: o
Agent(char id) {
# p- s z. {, E7 Y" X this.id = id;
1 P2 Q% S: W# W6 G2 x }
l7 a$ {# |% M- [0 C: [- C! E2 X3 P8 J$ @) @( {6 \8 E; y8 s
public void agentStep() {
. |$ |) i& y' x9 J0 N+ x `% Q System.out.println(id + ":" + Globals.env.getCurrentTime());
2 P. X( s! N( v) z7 E }' | B0 \5 ]& i1 X, |
}- I) {2 Y- \% U V* U+ S3 M
' H' z/ b6 k$ H4 I9 S, ~6 C) T
public class ActionGroupDemo extends SwarmImpl {/ v# h# N- \2 c" _/ h4 L' g
ScheduleImpl schedule;4 [4 c* Q3 R' t( ^, I& H( U$ v
ActionGroupImpl actionGroup;" L5 j6 q; K5 O/ @
ListImpl list;0 a6 q7 _7 R8 y* B+ w
char Id = 'a';
' [8 `- G5 G! U
$ H" r& c5 i# g% |: } ActionGroupDemo(Zone aZone) {6 J. k$ f- j& |: p, \+ P, n8 |
super(aZone);
( I+ C; {! g0 E) |. u list = new ListImpl(aZone);
- s5 I6 E4 @, x swarmSetp();5 z# c7 p( d: r \4 t' {+ L
actionGroup = new ActionGroupImpl(aZone);
9 @, Z& {0 S0 v. v g+ u1 n C schedule = new ScheduleImpl(aZone);
; Z5 S( @: e# c try {
# s5 Y& F& I* P: q; O Selector agentSel = new Selector(Agent.class, "agentStep", false);' ^' g5 r( n7 P, x9 C ~; u
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& h* A$ E& w) j6 v4 |: R [* U) W0 \# ^' g. s- D
actionGroup.createActionForEach$message(list, agentSel);
# B0 w# p* b0 r5 C% \ actionGroup.createActionTo$message(this, swarmSel);7 m& A0 G6 U2 e& F, @
schedule.at$createAction(0, actionGroup);, u4 E$ g9 U% \5 {, `
schedule.at$createAction(1, actionGroup);, `, R; t. m! F& X) O
schedule.at$createAction(2, actionGroup);' q) |) I+ Y+ a3 w3 s% S
) u/ J& W# K/ v5 t3 D6 H } catch (Exception e) {( N- Z% |1 y3 V# m! F1 F5 H5 Q: B
e.printStackTrace(System.err);
% P3 v+ I$ q1 e$ }4 w8 p //System.out.println(e);
/ H7 X+ W2 S+ C/ n( j* c System.exit(1);" @0 E, Z8 v/ T& B# g% j# A# \9 j
}- t" C: C% z l- o& D' o. V7 c, Z
q4 f! g1 r# t: {7 s
4 F" k% y% z* Y, u8 v. Q) `* ^ y+ ^0 P
}5 y* r2 K5 v( }4 m- Y4 K0 ~. E0 I
% T% W0 m+ \( G private void swarmSetp() {
+ X* |7 _- L/ o/ [; E list.addLast(new Agent(Id));- }; @4 f0 P! J0 H' U% a
Id++;9 f H: ^, Q7 N4 T7 v3 m
}
9 u: J2 A; ?2 o1 a: A, p1 v3 e( y/ J0 l" |9 w# z' H
public Activity activateIn(Swarm context) {
$ v' K# L9 G. a5 z super.activateIn(context);: s1 J; l H0 n$ S D" P
schedule.activateIn(this);, O! a v. i, Q# H1 S
return getActivity();
9 { j7 c$ P" H5 Y }# o7 Y% W: G1 } h9 t
+ s7 H4 ^/ P* j0 k0 z public static void main(String[] args) {
' o, v1 G3 ~- s2 v/ Q' R! K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
V9 ]! A0 f4 ]+ Q8 ^% Y$ I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ V" Z0 P, t r* o; a C/ o
swarms.buildObjects();1 z0 s6 d5 A* H+ n# J
swarms.buildActions();
& v f7 y& J4 i7 M4 o7 f/ X swarms.activateIn(null).run();
' J' E$ l! E. S6 k! G, @3 e }2 `4 u7 @6 l- g* ]9 h$ g4 t
4 ^- m4 x/ M2 e8 O} |
|