|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ Y. p' P+ o: Y3 x
" M4 N ]) p+ u+ m. I. X# p: F4 S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 p; Z# a$ {) p5 A: G& E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ E! U! v5 B/ v1 W6 |/ dswarm.SignatureNotFoundException: p) G8 }6 Y! P' G# H! `% M
at swarm.Selector.<init>(Selector.java:76)* o' h$ d# R: b' M3 l i, Y& y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); U! h) C0 F- b+ P& j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% G7 D1 f `- t4 M3 w7 J. v, D; @" M0 O# E6 A
3 K! | R' u0 @, e
import swarm.objectbase.SwarmImpl;
9 Z( U; u; v1 K( D6 w" x/ Eimport swarm.objectbase.Swarm;( F% @) o# \5 o! Z% D! \0 ^6 T& i
import swarm.activity.ScheduleImpl;
1 ]) K# S0 Q) O" E6 q% u' _/ P4 Oimport swarm.activity.Activity;
4 N) i! @+ l, O. M: c4 ^import swarm.activity.ActionGroupImpl;# M+ A9 `7 t" X% ` r
import swarm.collections.ListImpl;1 i+ `! F" K6 J
import swarm.defobj.Zone; ; d0 r: d _7 A+ a% A1 c+ E
import swarm.Globals;4 U. Q- C) l/ C- W7 T
import swarm.Selector;0 d3 {3 A8 _8 U2 [+ @
import swarm.activity.ActionGroup; : W; @5 M+ E L- J8 K4 b9 t0 k
class Agent {
" L3 @' i! V& k1 p" Y' p char id;
) X2 U" i4 Z; Z
! Y5 z7 U) R; k* m Agent(char id) {6 G+ [4 _% }: l+ A5 N
this.id = id;
- {( D! n( h% `$ A }
5 x& H3 ]6 v( Q" w- f- u8 I) P: b: d9 o
) e* @: D0 \) h! I# T public void agentStep() {1 J7 V; B! y. w9 i
System.out.println(id + ":" + Globals.env.getCurrentTime());- \, M/ x$ y3 [
}
5 \) r0 b# v: n+ E; d}
& L9 `2 v4 O0 e" \9 h8 r% \$ W, A! W, e" w6 I
public class ActionGroupDemo extends SwarmImpl {4 N: y& o( I0 L% L I
ScheduleImpl schedule;
/ q& W7 w" _+ B% z6 \ ActionGroupImpl actionGroup;
: W4 m/ Y i3 s+ Y7 u4 n ListImpl list;6 Q8 k* v9 `- a
char Id = 'a';% k! {/ Z, t- o6 ?2 f* n
2 H0 i8 c8 K6 [8 r+ ~
ActionGroupDemo(Zone aZone) {9 W. y5 t7 A/ |9 d9 ^7 Y
super(aZone);0 P; G# ]; `, I3 ^; V! x/ z+ z# g
list = new ListImpl(aZone);. N W6 z- R- M3 K4 e0 P6 U
swarmSetp();; ]+ `4 v1 J, X! @
actionGroup = new ActionGroupImpl(aZone);
) [7 e0 g L* i' u* H schedule = new ScheduleImpl(aZone);
+ c9 ^% ^1 Q1 `2 h: |1 F try {7 g/ o* K' H+ Y$ c! y9 k& I( a% Z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 `, B! L& l, J% ^' U Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& C: m- |! A/ A% O7 c; M) B' I2 D7 ^- ?
: T" N# Y, i! h* N4 p- r6 x7 U+ l; k actionGroup.createActionForEach$message(list, agentSel);
7 z: a2 g3 k# X$ ~; [; Q; }7 r actionGroup.createActionTo$message(this, swarmSel);7 P! s# k$ M( Z2 I6 }. Q$ v
schedule.at$createAction(0, actionGroup);
- R- k) c5 j# P. V& {+ ~ schedule.at$createAction(1, actionGroup);
% G! F- [- D* `. Y& \6 j& H" C7 h) E schedule.at$createAction(2, actionGroup);8 @' w+ d5 }/ f4 m/ X
' Q0 u+ l) j) t } catch (Exception e) {9 z. H) `; E6 Z" z3 F
e.printStackTrace(System.err);
, f/ Z3 j j) d: j //System.out.println(e);& M2 U9 F) D+ K2 ~
System.exit(1);
$ \, z$ Y( T1 \4 E6 s- X }# H, j! k% s; ^. S9 @) N
4 ` H j4 ?; F, h7 g" x$ o$ B
! s# \* I- E4 N7 {, R
}, D' A3 D7 D; }7 V3 P3 r" i
* I5 f3 @- H/ u3 |, s$ L" e private void swarmSetp() {
, F7 i) K. p/ M list.addLast(new Agent(Id));
' W( Q6 |4 X4 h# D6 R& V6 r# N Id++;
. |: P) N( `2 R8 e [ }
2 |+ z: ]- I5 B j* I; Y7 \; \' C
+ T3 K* c% r9 C* s9 z public Activity activateIn(Swarm context) {
# x6 Q# d6 |; R% }9 L super.activateIn(context);
3 Z/ x" j4 ?$ M. I9 W, C5 D% D schedule.activateIn(this);# Z5 p( v( w- e( `" l! q
return getActivity();9 C; n8 h8 a1 N W* U
}' l$ o& q/ @4 ^8 o" X
/ q) O. _1 e8 a6 P0 H. c+ w# q: P2 i
public static void main(String[] args) {
2 t( j9 G. A8 @1 r5 h! m+ z+ ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ k* L3 q2 \1 q3 q' o/ e* U" T
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ t# `8 N: m2 s# x) a$ y, {" ?
swarms.buildObjects();
) z8 [) ^) w( s6 V swarms.buildActions();5 a3 X# R" {/ ~6 B( ]6 q
swarms.activateIn(null).run();
* H& f3 J" B O" z! j }0 N. o/ H) N2 r; ]
' X' Q, K: x7 @ `
} |
|