|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 {5 o3 p1 H$ l; m9 H6 v) D( i( Q. d K2 ?, [' c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# ~; M( R. ^5 `" X, ]4 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ W8 W7 ]; Y/ T2 t$ d
swarm.SignatureNotFoundException
- g2 G1 N1 m- j/ u& x at swarm.Selector.<init>(Selector.java:76)
9 Y N5 [3 [9 u: A o/ B& z8 r A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 `# {; E$ l( V at ActionGroupDemo.main(ActionGroupDemo.java:67)3 X& L1 s5 D. W1 m ^
" R# c# W' z1 e" s9 Z9 y& i$ H4 V' d3 m) U! G8 f
import swarm.objectbase.SwarmImpl;. k4 S* \& E' A( r
import swarm.objectbase.Swarm;
2 k" V2 `) {2 ?% n o9 h- @3 W) pimport swarm.activity.ScheduleImpl;
# R4 e3 B( n3 c% E% kimport swarm.activity.Activity;$ C( ?7 a* e6 u/ z" J7 y7 H
import swarm.activity.ActionGroupImpl;
. b( `7 Y/ c! h9 q) }import swarm.collections.ListImpl;
" A, P8 Y3 \ u- Jimport swarm.defobj.Zone; 4 [4 z' g/ F/ }9 q! g
import swarm.Globals;5 E. _' j- Z3 p- o8 r8 N; M0 q* j
import swarm.Selector;7 E8 |% k( h3 H1 n) I9 q$ ]
import swarm.activity.ActionGroup; $ j9 e- |9 P9 d1 ]
class Agent {
6 V% u \( F) P char id;
2 R0 G2 S4 r% c( t) ^* @% j7 J0 k. _& A* U/ [4 S
Agent(char id) {
3 H$ _4 j! R, |1 {! G2 B+ l0 ^ this.id = id;3 ~. S4 r. v+ y, F# @
}" F7 U, i M' O4 p
; A; d) Y* t- @9 h( E+ a# t
public void agentStep() {. G: N2 f G2 l
System.out.println(id + ":" + Globals.env.getCurrentTime());/ r; p% m) H6 ]* [
}
; c O8 c v9 M$ T6 o1 @: U}
" g' {& x' y* z2 t; B! Z, ? i
I5 ]8 D* X, O% K& Ppublic class ActionGroupDemo extends SwarmImpl {
9 B' Q# r9 Y3 F) l ScheduleImpl schedule;% O5 y4 X+ ?- Q) F2 t
ActionGroupImpl actionGroup;# j0 P( t" |/ K
ListImpl list;/ w! V) \2 [( W. v) v3 o
char Id = 'a';) Y. n/ z- L H8 a* X5 [; L
, C. l+ }, L. D( [( m: e
ActionGroupDemo(Zone aZone) {
; \7 Y2 _: x. B( U9 \6 p super(aZone);
( z: z/ x! \# _0 f* o list = new ListImpl(aZone);
3 g5 I2 F1 M. r" ` swarmSetp();) J0 |# m1 V* t/ u$ a- a
actionGroup = new ActionGroupImpl(aZone);
h, n+ Z3 A- [& U/ r schedule = new ScheduleImpl(aZone);
( E9 L7 x2 P9 l% ?1 q8 T5 n try {* D5 g# V: @; w: l6 a4 ^, @4 b! w( \
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ W& _4 A7 |2 T+ \1 z6 ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 }+ h/ p4 }+ i2 z 6 t/ r* @( {, Y( i! M$ O5 v
actionGroup.createActionForEach$message(list, agentSel);
+ i) J9 `5 l% N' Z' D6 R5 `, H actionGroup.createActionTo$message(this, swarmSel);" `6 {" \# l2 q+ i
schedule.at$createAction(0, actionGroup);; y3 \7 y9 L0 C w6 _( d! e5 R
schedule.at$createAction(1, actionGroup);. w8 h2 f2 {( X6 M, x0 B+ v3 x+ O, e
schedule.at$createAction(2, actionGroup);% b2 M( ^, n* k2 Z1 b7 S5 O
7 ~+ G6 t" u3 D2 L
} catch (Exception e) {( D9 [9 n! E+ f# C% H
e.printStackTrace(System.err);) h5 x2 x9 M6 \6 `8 j4 p. o
//System.out.println(e);
2 E4 ?; G$ F* O3 i" M3 d* x0 y System.exit(1); b K# T ]; V. t. k3 _- Z; [
}
; ]' o+ u2 r$ N. S. V: b
# w% N% K0 z& g* o# V/ ^9 U; i- K9 k7 A7 b
}
S2 e7 d, e- ?, ?7 s0 H# `$ f
% X. f( w& m' P2 s private void swarmSetp() {' p2 Z3 u. S" N! _5 Q$ i" j8 _5 o
list.addLast(new Agent(Id));
: y$ r4 O( h* w; C/ h6 l" ]* l Id++;
5 ]9 ?3 M! r6 ] }
7 ^7 i% z4 o: r: |; w% p- t5 Z$ D/ J8 f0 }: i5 r
public Activity activateIn(Swarm context) {
, \) Y. @/ W; `* ^( J9 T& F' F super.activateIn(context);
3 c7 ~6 n. U6 R h% i, o' ] schedule.activateIn(this);
' ~$ @" @ R" w* G; m" \ G) B; k return getActivity();! t/ b$ Y4 p6 D- i: E; _9 W
}
+ \- u @- q5 {1 \. Z3 {2 i/ S1 p3 I, W/ h% T: U- t4 P2 k! E
public static void main(String[] args) {4 J( L- T% Y# x& J1 F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" C+ q$ {! |6 y* G. a2 T
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! R, I: J! x4 d+ n swarms.buildObjects();) z1 y6 v* R0 S7 |3 _% x
swarms.buildActions();' l5 ]' f7 e- j2 s. E$ H2 c+ y
swarms.activateIn(null).run();; t3 u k8 \" o% L/ ?9 Z# y
}
( z$ v1 d% |% o3 R
, X" c7 }3 g3 { q* Z} |
|