|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* Z- U( |: x2 D2 U0 f( _
D- b. \3 e( j V+ `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, c1 L) I+ I4 D7 L7 H' i& A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 ^' G5 Q! a' kswarm.SignatureNotFoundException5 r. e5 {+ _, u5 @! i2 v5 R
at swarm.Selector.<init>(Selector.java:76)2 M( G% S3 W6 D% ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), Y) |' g* w! d; `
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 V' [4 ] O. ?& k* M. W
3 {: L5 {' j9 ?% _! q, u( U7 O9 x3 r& N+ P5 q% `
import swarm.objectbase.SwarmImpl;+ h4 E( ?! E" I# ~% l& _' ]( w* v
import swarm.objectbase.Swarm;+ s4 Q* Z0 b7 f; y: ?
import swarm.activity.ScheduleImpl;% K" `, N3 i3 U, X& M" V3 H
import swarm.activity.Activity;3 M4 W( b# ^. d7 b$ U: ~1 a! I+ F
import swarm.activity.ActionGroupImpl;
! E8 K! h- w3 yimport swarm.collections.ListImpl;
% C3 F9 ]4 m& Dimport swarm.defobj.Zone;
) Z2 @5 u) N) t" Pimport swarm.Globals;
1 G+ E" k7 k& e/ ?4 S9 Uimport swarm.Selector;5 ]/ F; J" B5 j: g- t7 e/ H
import swarm.activity.ActionGroup; c: C6 b# \2 V& a" w+ I9 F, \
class Agent {
6 U c( b J9 l. R. s char id;: x8 V) }; {. ^( y1 R$ U+ H! H. V
* [- C1 M( I" ~
Agent(char id) {9 v% K# o5 A3 ~& } ?. g" b5 J$ u
this.id = id;
) ?% y% u1 B! q% f" }6 ~( x/ |" i }
5 m- ^' ?/ b+ f8 ~9 w
, y5 R) t5 Q! v; _" X public void agentStep() {
# K! j* _4 ` O* u. z- R System.out.println(id + ":" + Globals.env.getCurrentTime());
9 @/ X; K, O7 |5 q0 \9 S. o }
/ O2 Q9 a' q. t0 g}% x3 q! d# Y# t8 q! s
3 \, |3 N% v) F( a# D) ?public class ActionGroupDemo extends SwarmImpl {
' `4 X" W q% S- k$ N1 d ScheduleImpl schedule;
' k4 @0 I( Y* Y g- m- k& Q ActionGroupImpl actionGroup;
! i$ E8 X3 O7 A+ Z' o; L4 w1 m ListImpl list;0 z% I1 Y `( l0 [8 s2 [: l
char Id = 'a';+ j% z. F* H. @
" R# B# O) F+ x6 h+ \& X ActionGroupDemo(Zone aZone) {
3 D6 n" k! N/ [+ h7 u& p3 h" N super(aZone);# j6 G6 v9 T1 a Z0 O) i( ? A1 f
list = new ListImpl(aZone);
$ V2 z+ o+ ^5 p* c/ c) }' j# I# y swarmSetp();
3 J. Z+ Y5 v. N! L" ?- H actionGroup = new ActionGroupImpl(aZone);) e! l% V' d' J2 d# [; L+ Z
schedule = new ScheduleImpl(aZone);
, y/ K& t i- v- F7 k2 Y& h try {
! p- g1 m2 I5 ~5 f Selector agentSel = new Selector(Agent.class, "agentStep", false);
* u6 n1 J8 @) Z. m D. U/ c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 j% X1 l. u+ S; s K3 T4 w
1 M4 u7 x6 P8 C7 b9 C3 C
actionGroup.createActionForEach$message(list, agentSel);
0 F Y2 S3 f: Q actionGroup.createActionTo$message(this, swarmSel);8 Z! W& U6 G. n( Z5 P
schedule.at$createAction(0, actionGroup);
! S# M( j- M! S$ {( C* C schedule.at$createAction(1, actionGroup);9 W$ n+ O+ n$ ^9 R+ A
schedule.at$createAction(2, actionGroup);
& {' z7 X6 x0 x; J o# s q2 k# k/ w& q) O5 B
} catch (Exception e) {6 p }/ d; M' l R! G
e.printStackTrace(System.err);
+ O6 P s$ q5 C% L4 z e- [ w //System.out.println(e);& l( w5 N V3 H& ^' w! [
System.exit(1);
4 n9 B1 Q% A0 [/ y: O, x }0 O6 y6 _3 V8 d8 ^; {& I/ l
: G; C7 y# M6 V2 l2 }$ C% K# c& c) g6 m7 b
}
" d! m! o& J/ v0 V/ G$ i7 t0 s# z Z+ S% m) M: }: N
private void swarmSetp() {7 z- c1 j3 V c# E1 `2 A
list.addLast(new Agent(Id));( R' }2 F2 G7 I! D2 u- t$ O
Id++;
1 ^/ w9 `. ~8 {+ V) r }
1 Q* J( M2 h- w8 P8 | x
3 M! k8 d* i6 K6 U4 O: R+ e public Activity activateIn(Swarm context) { f* s H/ L) P) h& _
super.activateIn(context);6 B4 z( s! {+ D% {! `# m- C
schedule.activateIn(this);( U* d1 W( F2 r6 J, I
return getActivity();& @* V! }; d2 D" D$ f" \ p
}0 C) }! K8 j% Q5 W$ f
" D# n* @$ o1 k- @& |! J public static void main(String[] args) {
; F7 y2 H8 \& g4 O4 w2 y+ Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: a) Z& u# p( F. d! ?5 j, ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 U) t6 O( j8 z4 ~0 Y. [& j2 n. ~1 x8 A
swarms.buildObjects();9 \) n& `/ g3 D8 D
swarms.buildActions();
: I! o- G5 N. g% H2 R swarms.activateIn(null).run();# X$ e) G& R; M" l! C$ Q
}- u) x7 E2 t5 u6 P/ R
7 o7 B4 X6 {2 y$ i1 i% L' s} |
|