|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! H- e3 ^; Z& }; @/ z: w
; h& b4 q6 Q" B/ _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 W; h7 @! Z( S# i; J9 L, N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: ~2 \% ~* Q w/ q* z1 Tswarm.SignatureNotFoundException
) x- ^8 S( e# V% v1 c% p0 t at swarm.Selector.<init>(Selector.java:76)
6 `1 W- T: u _$ o3 h5 b' H" N3 F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ _! |- ^" `5 p; U0 `4 R2 P
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. J4 |* @. w# C! v( Z+ j4 A+ `" x' Y( r U6 n
9 X/ _9 U, R: a' d+ Y' Rimport swarm.objectbase.SwarmImpl;
* A9 }& }6 {. j! M; a* qimport swarm.objectbase.Swarm;
7 b* J, |* |# Q" u, t" V7 a0 f, uimport swarm.activity.ScheduleImpl;
. `" Y) q$ R6 i" }* kimport swarm.activity.Activity;- ?0 i4 e/ e |1 ]4 C
import swarm.activity.ActionGroupImpl;
/ D' }5 J$ h: c, b* \import swarm.collections.ListImpl;
2 c7 ]- \& P: I9 o: f+ ]. ximport swarm.defobj.Zone; 6 e& a% `5 z/ P% N5 O- `
import swarm.Globals;
1 Z5 u: J; a7 x; g% I+ q4 p1 _import swarm.Selector;
' R/ x/ ], M/ @( G5 K/ D& D0 {, N iimport swarm.activity.ActionGroup; 5 N4 r t& u) v' W& B$ Q
class Agent {
C5 x" f0 l( w7 u/ j+ H5 B char id;
4 U- u0 ]* ^; X+ z2 ^$ L& O
$ L% Z% j A" I/ ^9 T: }+ z, J Agent(char id) {
$ [, y# y; M4 I1 }% `# } this.id = id;& x& ^! l9 b6 A4 B! k
}
4 K ]! }1 k. h x) X. V3 b, |7 Y' Q, B( H6 y
public void agentStep() {$ H" v5 t7 e: ]
System.out.println(id + ":" + Globals.env.getCurrentTime());% D$ c% }* o" f$ [1 s; H$ e( Y
}
4 `' O- u- M1 z& z! T}
: Q) L$ u9 q4 N: a% l) f$ K2 x& J6 B7 o: {) r# V) ~
public class ActionGroupDemo extends SwarmImpl {# J, F) W* U5 d. s" R1 ]
ScheduleImpl schedule;
; _. P, `5 ~' Y0 b, C ActionGroupImpl actionGroup;4 u- E7 ?- U7 u) {9 [0 {3 i$ o, A
ListImpl list;
; t- I) X3 ?: y. t& [/ M char Id = 'a';2 Q$ |. w5 w5 `0 F0 {
1 g) y) u7 e* @/ v; w4 O ActionGroupDemo(Zone aZone) {
7 I$ M7 o9 C. y, | l5 b6 @; B super(aZone);% p" u+ _8 e$ H+ h: z1 d$ o2 `, ~
list = new ListImpl(aZone);
' ~- y- y- t$ I# Q! ` swarmSetp();- a# Z7 j' L3 k: ?' d
actionGroup = new ActionGroupImpl(aZone);' ?: _- r y1 d" `- A
schedule = new ScheduleImpl(aZone);
, Q" W: w8 q! _0 V: b try {. c/ Y/ [3 l4 {3 Y8 |
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" x2 j7 J9 n4 s. b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) B+ R9 `2 Z0 V2 l
' ]3 m( s" L2 D; u8 E actionGroup.createActionForEach$message(list, agentSel);
/ `0 n ^7 Q) ~' C9 { actionGroup.createActionTo$message(this, swarmSel);
, p. Y! z" w5 ~- @! h- M D, x3 o9 o schedule.at$createAction(0, actionGroup);
2 Q8 s& Y1 Y! ~; k schedule.at$createAction(1, actionGroup);
5 j) p+ v7 w# T' u% \9 z7 |$ B8 x schedule.at$createAction(2, actionGroup);
- P5 e, w7 H0 t$ `
4 n) U1 }. M3 d; |- c6 W } catch (Exception e) {
4 R3 g( Y$ K6 `+ F e.printStackTrace(System.err);3 `3 A. b( l* m) E# ?; ]5 C7 ^
//System.out.println(e);" E9 U- e$ `. [( _3 |
System.exit(1);
$ m5 U G& M$ B2 J1 W }2 N6 x# t. _. y: i
. D! _8 \! P! x7 y
5 E, d9 B2 o" H" z2 h5 S+ h }% Q+ x' e o9 J% f- \ a
+ t! C, v$ a4 R: o1 y1 X private void swarmSetp() {( U% w0 d* F2 y' j4 q! \3 d
list.addLast(new Agent(Id));- e m! a7 Y% G4 R: Z$ H# O q
Id++;8 T) W% f4 h6 s8 D: O; `$ J8 W
}5 K0 Z; H- p7 c; u# @7 k
, A0 F6 U. W4 i5 ]: F" a; s: p) o5 c( Z public Activity activateIn(Swarm context) {
; ?- W6 e" s0 u( i( M5 O; s$ E* k super.activateIn(context);
6 \" `. v: K+ c6 y r6 [, `. [: a1 J schedule.activateIn(this);
0 R4 b E1 `) ^ return getActivity();1 m0 k6 `5 X$ v
}
0 C+ y- z# d/ ?! W7 Y: f/ j* A7 m/ U6 F1 F* ]
public static void main(String[] args) {
2 ^4 d/ }7 ?$ o0 ?$ U$ M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' c# H0 T: X3 D5 v7 M( t/ t$ F% `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" n) F1 f0 W! T C
swarms.buildObjects();
" p2 F- _& J& ?. M# G* d, R swarms.buildActions();
' K! d# A6 |3 l8 Q3 b swarms.activateIn(null).run();
1 V1 p$ t3 W5 l8 f% t& |' ]$ x }* C0 S0 ?. f1 I! O$ T2 P' Y
" `. F& o5 }+ ]9 `4 H$ j4 r9 u) t} |
|