|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" q; Y: I; _9 ?+ S* k
# Z4 B1 o) ?. f$ D( b# [! p; y" e* q, P& h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: y0 u6 o: M* e' M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% E) r5 ?( C5 S$ Z
swarm.SignatureNotFoundException# E7 @! {. M/ Y/ W6 [
at swarm.Selector.<init>(Selector.java:76)5 O1 {+ a* D0 E2 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ k* D" v r# h) Z {
at ActionGroupDemo.main(ActionGroupDemo.java:67)( q3 S1 v/ x3 g8 _3 L
8 H6 G' j# W8 u* D, I W
8 D# S q8 _1 w" a; w- ]& u
import swarm.objectbase.SwarmImpl;9 m) V ~3 r+ L! Z- o c' y
import swarm.objectbase.Swarm;
2 d3 `) L" w2 uimport swarm.activity.ScheduleImpl;9 h0 P, x/ p' _8 S q4 q7 k
import swarm.activity.Activity;$ W% c# q2 O6 L7 W7 R8 {/ i/ u
import swarm.activity.ActionGroupImpl;
+ S; X G- `6 E* Wimport swarm.collections.ListImpl;8 L B9 N% {- N& }* O2 D
import swarm.defobj.Zone; $ s( d& s* R# [: g' u# o/ r
import swarm.Globals; c! V( x& R3 [
import swarm.Selector;4 B/ M# ]+ [, }
import swarm.activity.ActionGroup;
5 O6 g$ v/ Q& ]class Agent {
; ~+ ?6 @8 Y" ^ char id;/ n* e3 V7 q) X: e1 {; y
( o+ f: Z& N) w Agent(char id) {: A% m" i, `3 h# h7 L0 [, s
this.id = id;
5 c* J: N j) N, i& q }
' c- l% K! c! B7 Z3 g8 v+ ]/ d4 X; `4 L
public void agentStep() {' }0 Q; J, d. _/ l& }! W5 a" U; ]
System.out.println(id + ":" + Globals.env.getCurrentTime());
: `$ K0 M& |/ i( | }
: v' n) x: j. Z$ j' n- i}
# V; ^* v4 A4 X* _ e" y/ W: P, Z# a; b) [
public class ActionGroupDemo extends SwarmImpl {4 v: G* q, q3 z9 i& g
ScheduleImpl schedule;) k x0 T- z$ G4 N0 v% u1 H# E3 g9 _+ \
ActionGroupImpl actionGroup;
\5 X: ?5 m. y! ~, Z! c# e ListImpl list;
; J/ i7 G! p2 a char Id = 'a';
) D$ ?( Q. Z& |4 Z/ o' @1 P! G) U
3 H% ?4 @% H: |% t# v+ e$ u ActionGroupDemo(Zone aZone) {( v2 v% A% H8 M& P% p# c
super(aZone);
! A. x. p0 P/ `8 z+ l( j! z/ w4 `5 i list = new ListImpl(aZone);
, l7 C/ ^) q: C( ~& _ swarmSetp();
# n% @1 Q; z, P) Y% o7 d actionGroup = new ActionGroupImpl(aZone);3 S' f# A& _! V$ U/ ]# N" _. i* u
schedule = new ScheduleImpl(aZone);9 X: ~/ [7 g+ d. r( a' P; l5 n( \
try {
8 k9 C: M% G/ `- ~2 A# l Selector agentSel = new Selector(Agent.class, "agentStep", false); N: e+ `& ^4 j3 l) S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 X6 a3 V# w; y
* d8 I) o* o9 T3 H* q# j4 e. }
actionGroup.createActionForEach$message(list, agentSel);1 Y$ ]$ K8 O; ]
actionGroup.createActionTo$message(this, swarmSel);* s' n0 L2 |+ T- ^; r
schedule.at$createAction(0, actionGroup);) J9 K! W" O4 \5 \% ~! A& {$ [
schedule.at$createAction(1, actionGroup);
. W& i8 g# A2 u schedule.at$createAction(2, actionGroup);6 M$ p" U# K" b
: y1 X: l' a) }* I* G) ?- R } catch (Exception e) {8 I3 q9 y2 i$ I5 Q
e.printStackTrace(System.err);
! m; ^ `3 Z4 \" Z8 O //System.out.println(e);
' ?. d( s6 M, N g System.exit(1);4 W% Y. `" o% a% K9 F Q: u
}) t$ W# o; g" C' e9 Y7 g& F: F
9 o/ M6 ]( e. t1 C% a1 r6 [: Y; z) u2 s4 h
}
+ O! H6 C3 g$ x% z. @ P+ K( R- g( _: y# |6 k6 p3 e7 e; o
private void swarmSetp() {
/ w% k$ q8 N. x# i* I4 c list.addLast(new Agent(Id));, u. b+ S$ l% e) p" u
Id++;! [' n( z6 ? V# D2 C
}
2 p# p) [$ v! N( X: _6 g2 F$ m% p4 E" }
public Activity activateIn(Swarm context) {
, t+ }5 i( x0 y: n/ H super.activateIn(context);, Z- ?( z) g# c
schedule.activateIn(this);, Q9 c4 l8 [& A( K& ]5 |
return getActivity();3 w# M: q. D5 i2 n
}
- r0 t$ @7 w* A0 f; ~" G p' F3 r( _
public static void main(String[] args) {9 \& \9 p5 z _0 h1 ]% E. Y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) ]+ d5 N) t* Z. b: s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, ]- f: u/ P0 i1 } o swarms.buildObjects();
2 S1 e" g) L' w* n# I2 y; X7 b: v5 F swarms.buildActions();- J- A& v& T5 g7 q0 ^
swarms.activateIn(null).run();6 i1 g! Y8 a' A2 d" Q
}
( `3 ]2 e( f! O7 h& D7 H- `8 G! F; T# D" U; `0 ~; l* C: o
} |
|