|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 E" Y6 @# g* i+ d: W/ R, t+ Z" R7 J, E, V
; i* s; K; N* D' J" V: u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; C- |. ^; @! g0 p4 [% Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 E' l: I) @* X) Rswarm.SignatureNotFoundException
- Z, E9 t) B, X& i- I* b( z6 n6 ^ at swarm.Selector.<init>(Selector.java:76)
% D0 n% k* l; w6 o+ Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 y' M/ f3 {& D, A: Q at ActionGroupDemo.main(ActionGroupDemo.java:67)4 t J z1 Q E w0 k' x
# P8 z6 C$ Q% E+ B8 @% @1 K( f h2 B! c" W! u! Z* M R( l3 b
import swarm.objectbase.SwarmImpl;
1 D9 `: t$ h9 t0 B8 a3 |import swarm.objectbase.Swarm;3 o G3 b$ @, E7 l J
import swarm.activity.ScheduleImpl;, I' l) h2 j* b, ]
import swarm.activity.Activity;
3 @7 e ?/ ~1 j. y6 B# P2 ~import swarm.activity.ActionGroupImpl;
3 d& L4 N% } \0 M3 Y3 Limport swarm.collections.ListImpl;
I+ V1 }! k M) D% L2 Bimport swarm.defobj.Zone;
& R' l: q& V6 B8 Gimport swarm.Globals;
3 O2 t/ m. c! |, yimport swarm.Selector;- G" r# g5 U2 l* d7 l8 q/ b
import swarm.activity.ActionGroup;
; [+ e- g1 ?% \# p# ]class Agent { }: g& `$ \/ P1 s n# c
char id;7 O) P2 i9 X# C0 T6 S ` p$ F6 j5 e
& a8 e- I6 N. s: m Agent(char id) {/ ` E9 J; ~( D; p4 l- x, r# K
this.id = id;) O! G% T0 S& P! s$ o
}" V. d$ v0 v7 g3 F+ T- O1 i
$ D( r( P! A0 N+ m% b. @# Z
public void agentStep() {* f# K" z3 b# L
System.out.println(id + ":" + Globals.env.getCurrentTime());; t" E2 s; H7 {9 c$ e
}. \) N P+ t8 q- d1 Q" |, O; h
}9 K4 `0 j5 c( i
. h7 D: ]; }0 i! Y
public class ActionGroupDemo extends SwarmImpl {& L; H* N/ ~# ]; X k: x8 C! X& V. P
ScheduleImpl schedule;
" J! W. F. O U$ z ActionGroupImpl actionGroup;
. f9 V- d4 s \! F2 W' O4 F) f ListImpl list;: g0 }, _. y+ e9 I% F$ S
char Id = 'a'; p v+ g2 g1 f7 O$ P# q
) \9 E4 H3 ]- v1 q, o ActionGroupDemo(Zone aZone) {+ L m/ J1 c5 a/ d' }5 |: W
super(aZone);/ w9 w: J" v5 Y
list = new ListImpl(aZone);
8 U) n! V! n$ Y9 D6 i) } swarmSetp();- c. H; F* _+ a! K# I
actionGroup = new ActionGroupImpl(aZone);
+ P# ^3 z: T% f. o2 C0 J i% G schedule = new ScheduleImpl(aZone);. i3 a; L; z) }0 ~/ R6 ^) E
try {
% Y3 Z2 z+ a" h2 t3 t Selector agentSel = new Selector(Agent.class, "agentStep", false);" Q8 L- P! _" q- M' l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. z' [! t( O% x+ S9 O8 J' O
* ]$ ]9 {! @. v8 ]! u$ ^* V! j
actionGroup.createActionForEach$message(list, agentSel); i8 A6 N$ a$ r
actionGroup.createActionTo$message(this, swarmSel);! `" R& S& t! @; t7 A" p
schedule.at$createAction(0, actionGroup); M8 A7 Q1 I$ J
schedule.at$createAction(1, actionGroup);1 t1 Y+ y7 E5 [( A
schedule.at$createAction(2, actionGroup);
1 u$ k( b. |, u# H5 e/ t$ h' Z9 q( a
} catch (Exception e) {$ k u! J& L: Y0 G
e.printStackTrace(System.err);% P; u6 M3 j6 b i s$ d4 B
//System.out.println(e);
/ ^3 x9 I! i) ]; g3 y System.exit(1);
! w! G/ [, [% F# m5 [7 \ }
8 y* ], e' ~" l7 Q. S
: d! C, l6 W# Z2 T1 A+ J0 N, ~# j y& q# B2 E7 M- n* C! M
}
3 W6 _8 m+ m2 a+ D4 [) Q& M- L# g9 b3 z% `" I
private void swarmSetp() {
; c; {2 T+ E9 M3 {! h6 e6 T, I list.addLast(new Agent(Id));; z% j& L* P) K
Id++;
: R3 k: l0 B) o& Q }
p/ ^$ l1 ?" ?( h! p
% |2 K. m r, _. n. C public Activity activateIn(Swarm context) {
. G1 B1 p7 S; b: | super.activateIn(context);
5 m7 p/ ^# \4 i, W( Y. e' y1 N3 e schedule.activateIn(this);# E& }* t* w# w4 L& S
return getActivity();
) E* s0 ~- I& L$ p. u" q* w9 `4 h e }+ ~% W8 E+ O/ W+ ^5 |; J
6 y% M& Q$ G% H" `9 \, V& h
public static void main(String[] args) {# g8 U( U7 D" q) n- O8 P# {# Q. m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 I8 A8 D* [0 s) b% [6 }+ b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 L! F9 m2 w3 {/ t# S" X% C swarms.buildObjects();
0 |5 K7 P% F/ m* P. ?( s swarms.buildActions();
% }! t/ E! w8 \0 ~0 b swarms.activateIn(null).run();
6 G+ @; W& N# W, S# i& Q }5 ?4 v: a, h' L6 n) l* F( Z
' V0 @. H) `# S. [$ ~
} |
|