|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 A) Q+ }3 X0 x6 A- P; j$ q1 K. l' _1 _0 b
! h6 Q. \6 P+ f3 l3 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( f) ]2 V u$ }% M3 N* j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; H( C+ U- u& x) `. U4 W' W: Cswarm.SignatureNotFoundException
, Z6 N( a3 }' w. Z, p# {/ { at swarm.Selector.<init>(Selector.java:76)
) o& h) B; _; J; S) Y% _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 ^( F: Y. v& l- J1 n
at ActionGroupDemo.main(ActionGroupDemo.java:67)& ~6 G8 u8 L% L9 h) P
" `: o: F+ m& L, g9 J) }# B
$ T3 l( ~& ], W3 w) \. p, z3 ?8 ?import swarm.objectbase.SwarmImpl;1 z. T/ `! U! q, O. s
import swarm.objectbase.Swarm;/ {' T# ?" W3 c7 q
import swarm.activity.ScheduleImpl;
3 H2 | z2 W/ m1 T/ X+ v8 pimport swarm.activity.Activity;
5 Q% K3 T8 ~. j Yimport swarm.activity.ActionGroupImpl; G$ i% t% m7 Q% T7 m7 S
import swarm.collections.ListImpl;
$ l* u* j+ t- d) C; e6 limport swarm.defobj.Zone; ) i# S; ?; s1 @/ p1 P
import swarm.Globals;% e! R9 t2 T/ N% i% Q
import swarm.Selector;
+ b- h9 H7 K. g+ }) C vimport swarm.activity.ActionGroup; 2 K6 ~; s) ?) n( m+ W t% {4 T
class Agent {
' R, G* r8 x- Y4 W3 b char id;" ?# r! U4 R$ M i6 {# M7 K [
; a4 m- h5 Q* c( _! X+ @ Agent(char id) {. q* p& w9 a5 n% |' t
this.id = id;( {3 [2 c, r4 C. A8 r2 U. p, |
}
- K0 R( m. B# a8 C, [
L6 J1 l E9 q; Y# C public void agentStep() {/ K# L! e8 p- s/ n, k% B( P" K( ]
System.out.println(id + ":" + Globals.env.getCurrentTime());
) I% `& \3 {" i5 o2 x6 y }
0 g) g8 O1 ~2 Y( ~8 g! [& R* c. g+ n}
! X p$ j* G+ H' C, J% V6 Z% ~7 ]6 r: @3 k9 P
public class ActionGroupDemo extends SwarmImpl {
& Y0 m3 }8 v" H- D, ]# m$ D ScheduleImpl schedule;5 `& T G h5 A" P
ActionGroupImpl actionGroup;
3 l: E, v4 T( z9 o$ U6 G3 ^ ListImpl list;
5 |5 j6 @. ]6 Z. A6 N( [* s char Id = 'a';9 ~) v7 v0 E# @$ E, q7 }
7 `+ Z/ R, x# p& V4 N/ i7 |
ActionGroupDemo(Zone aZone) {; E; A5 A/ X( a( _
super(aZone);8 n6 |" i' K; e* f6 q, k" l
list = new ListImpl(aZone);: w6 U; ]- x( {. U& S- o
swarmSetp();
$ N U3 [% L& R actionGroup = new ActionGroupImpl(aZone);5 I y% c2 e4 |0 E3 X6 `
schedule = new ScheduleImpl(aZone);
! X" X# a7 W' E# t& c try {$ }) ?/ o2 W& J$ i8 c3 P! V- \6 p
Selector agentSel = new Selector(Agent.class, "agentStep", false);; v0 }# l# b/ w* ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# e. G( g3 V8 p& E, J8 R2 c1 _
9 ]/ p9 G- S b! M
actionGroup.createActionForEach$message(list, agentSel);
' G+ ^) @7 I, P( ] actionGroup.createActionTo$message(this, swarmSel);
, R4 j- [/ B0 t7 s schedule.at$createAction(0, actionGroup);
1 M6 P0 Q8 T: A( J3 h3 F schedule.at$createAction(1, actionGroup);
+ z3 I7 u3 c- H0 \) N6 Q7 ` schedule.at$createAction(2, actionGroup);
8 v# {- P+ W9 A- n+ M: t8 ~
. F( \+ z+ ]; Y! b } catch (Exception e) {
/ d% q' U) E7 r/ @& G0 F* O e.printStackTrace(System.err);- @' j$ a- I: e) C5 g7 s6 f5 D
//System.out.println(e);& V4 x f; H6 h8 g ?5 L
System.exit(1);
3 S/ n* O1 o E0 t }8 s1 Z ^ h3 a+ E# }; l- h
) l8 G; L1 x. [# @) ~5 D t: o
- m$ g% `' k- {9 I% w }
0 N2 q. x' ^4 @/ ]- G" [$ T7 A# k1 f( s8 z
private void swarmSetp() {' v" y2 G# |# Z$ d. c
list.addLast(new Agent(Id));. F' g: l! `) Q
Id++;" \9 Z; x( j2 g" \
}+ y* @ X& c& ]
# u8 g. e' W% @! a9 T$ q# r, ^ public Activity activateIn(Swarm context) {
4 \( X$ G% ^, W/ ] super.activateIn(context); F/ p+ c/ h% ] _* q% T+ F, P
schedule.activateIn(this);
* B! Y- i7 ~& ]% b return getActivity();
0 y5 k; J5 ]# V, Y4 p% D7 u }
- T' E$ z D( j q2 l1 H" A2 {& [: @. \! L! I9 M
public static void main(String[] args) {
+ ]. g3 M- D: p, A+ a% u7 U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 U) \9 E1 c3 G5 G2 g! [. {" Z. k' m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 {5 F! x0 D8 ~6 m. m
swarms.buildObjects();
3 U w1 S3 Z/ }+ k. V/ X swarms.buildActions();
5 s; D7 v% G; t3 p; \$ P; Q swarms.activateIn(null).run();6 N" l: ?' T$ U" S4 o+ g% v' p% M4 A
}4 t2 z8 r: @, D7 J( Y
8 O/ \: Z" k7 W6 J} |
|