|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 w( t, Q; H" v7 }+ }2 g7 o/ P
) v2 M1 E9 e# |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; ]! E; N9 k5 j0 o1 E( @/ Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 l3 F( {+ y4 U% _( N+ o1 a& n
swarm.SignatureNotFoundException
! ~6 Y- `7 j$ w, X; U, E8 { at swarm.Selector.<init>(Selector.java:76)
3 c, f( N" W) H7 e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 o5 K6 Z1 L# [! x- F ]+ R at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ W1 _5 ~8 j: P; Y, C* }, K5 F! h' J( t& t1 h
- P9 z8 a6 }2 n& U( Wimport swarm.objectbase.SwarmImpl;
. g- o2 |2 G9 a& t5 S/ v- aimport swarm.objectbase.Swarm;6 o1 t. [4 ^1 q0 u3 q; b
import swarm.activity.ScheduleImpl;+ h! e# q: T. t5 I6 C
import swarm.activity.Activity;3 c9 i* `' \& v/ a* s0 g+ o
import swarm.activity.ActionGroupImpl;
1 o2 t) r& J _; @$ U. Nimport swarm.collections.ListImpl;
( {8 Q+ b$ b0 {, S: m: R" {import swarm.defobj.Zone;
1 S( `5 l9 g$ G' \1 N! iimport swarm.Globals;
( ]0 g5 h8 X5 {; J- v& I8 \8 Mimport swarm.Selector;' |" c: }, E4 Z& M
import swarm.activity.ActionGroup;
* K) Y; o/ {( t+ E$ T9 R, g2 [class Agent {
- O1 s" V6 t) w [" j, B6 U4 n& { char id;
1 i1 A U& S# _+ H2 Z+ Q+ u I: h$ A! _4 M; N* w$ u7 l
Agent(char id) {
% Y3 b( d! w- a2 ~ this.id = id;/ X7 f8 E1 h6 l8 Y& k) ?$ H+ ]
}6 t C% f8 `$ N( l% c+ G
$ ]* [$ W! M1 S+ A/ h) C% R; ~) j
public void agentStep() {
* @2 h: X8 M" I: {) ]7 ? System.out.println(id + ":" + Globals.env.getCurrentTime());
0 m* P. T3 i0 K6 `$ B }
1 R' O: x1 l% S}; S3 I/ a% \# m* ^! Y% f& e
/ ?0 Y& y; v1 u: M& C/ l$ k
public class ActionGroupDemo extends SwarmImpl {1 N% L( U+ a8 l& `$ v) y! s
ScheduleImpl schedule;
' j! y* p3 V6 L% N5 u, x ActionGroupImpl actionGroup;# }/ p/ T6 ?; N' r& Y; M/ I
ListImpl list;
. P5 t8 ~( p# |# y4 ]/ @& `& @/ @# y char Id = 'a';
& b8 c$ y6 F. \+ \
2 o T K% y; \ ActionGroupDemo(Zone aZone) {$ S2 m) x2 I6 A+ [
super(aZone);) G- j$ Z9 K& W8 P
list = new ListImpl(aZone);
& G) p) m' M" c# R- {5 t; ` swarmSetp();
! R% b' z; w7 q, t- v8 n0 g! ? actionGroup = new ActionGroupImpl(aZone);/ { ^/ O1 t3 C P! ^1 X
schedule = new ScheduleImpl(aZone);
8 r( x! u0 y" H9 p try {
. v0 _7 o, Y2 E+ {) I. q$ w Selector agentSel = new Selector(Agent.class, "agentStep", false);" }0 l% l- _6 o: ~# Y% ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( |( ^: s* Z+ I' n# e2 s" ^
9 ]+ p% q9 J; C5 j4 M* | actionGroup.createActionForEach$message(list, agentSel);7 h0 O/ S* T8 d- s
actionGroup.createActionTo$message(this, swarmSel);) t1 j( l l2 k; b! \/ F
schedule.at$createAction(0, actionGroup);9 @% g4 W% k d1 Z
schedule.at$createAction(1, actionGroup);0 n# D4 I8 I/ h9 ~* p5 V
schedule.at$createAction(2, actionGroup);
# t: \" ?* G I+ D2 Z& j% s
, h; {4 a5 b# d4 t } catch (Exception e) {8 k1 X5 h5 ]9 J
e.printStackTrace(System.err);" H2 B% Y4 ?! ~
//System.out.println(e);
) B, `: H7 ~$ Y; b5 U System.exit(1);5 A. Z+ C% h9 m9 N9 L
}
+ V) ?% f- I4 n$ ]( f. G, J9 C1 z2 ]" N+ _* h* ~/ O6 ?
" Q$ b c# k. O8 R7 A
}3 [! c( X/ V) k. q% w" T+ i! C; f# [
& F3 r, @! ]% S1 w0 R' ^* d
private void swarmSetp() {. F# q$ e# d* r+ i/ ~
list.addLast(new Agent(Id));
4 u; w' E5 S& u+ e* B" [! J Id++;6 U0 K8 k9 t0 ^) L% U h' [
}
9 S3 y) N0 A1 n2 G
5 V, h z* S/ G# D, b# r public Activity activateIn(Swarm context) {% L7 t. b" p" t, D7 i2 L
super.activateIn(context);
+ ~- ~: B$ h5 q7 } schedule.activateIn(this);
6 y& m0 ~' I0 g* J+ l2 C2 J$ ~ return getActivity();; ~; B4 W; n' d3 }
}
1 h! q4 M* Q7 h5 `3 i* Y6 f1 o
/ q; I: `% q+ t. D5 @. n public static void main(String[] args) {! Z* N. m+ C4 S1 g9 o L; \. g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) `/ E: [" v0 o- @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 ?' ^; \* Z0 m! o/ W: a swarms.buildObjects();
6 D3 W! d g5 J5 C7 }$ m) G swarms.buildActions(); R7 {- `- ~" |" g s
swarms.activateIn(null).run();4 f( X z3 I% o! ?/ h; i* e
}2 [' P/ v0 e+ ]" t& Y
7 \) r' l6 h: `/ r# X- L C} |
|