|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. G4 S! R7 P6 p; u" ]$ H% `8 |* z6 f
0 |4 C. j8 p8 E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' L4 h! u7 l- |4 V* C% g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) K6 b; [& u/ Dswarm.SignatureNotFoundException) c& r* v0 [, n0 Z+ q! e
at swarm.Selector.<init>(Selector.java:76)( K8 \( T; m0 v! u4 g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' v2 a: L. K" R Q. Q0 O/ w6 I at ActionGroupDemo.main(ActionGroupDemo.java:67)7 J; _# _/ e) w
1 ]: q4 z* C: B5 p( ]# Z8 D# ?+ I' X& _4 I' p' R7 C- ]
import swarm.objectbase.SwarmImpl;' A- Y' U3 i6 U: v4 C7 B* H
import swarm.objectbase.Swarm;
c: h& A5 C( ?- L' ~' Aimport swarm.activity.ScheduleImpl;( O4 e2 i# ~1 ^; x! Q
import swarm.activity.Activity;
4 _: R6 e" o" R$ h$ S2 p! P2 Q8 dimport swarm.activity.ActionGroupImpl;
) P9 A* t* d: @. f* L- h( i/ }import swarm.collections.ListImpl;
7 U! ]/ Z! s" Q# b* X7 y) Yimport swarm.defobj.Zone;
5 j( L5 k! M5 Y" O7 x% I" F/ Fimport swarm.Globals;% R; w6 {. v$ w, _
import swarm.Selector;. r9 T4 B! J* O# }+ J% B) T5 p! s
import swarm.activity.ActionGroup;
}9 B) R' n4 Q3 T) Y6 }+ gclass Agent {
3 k8 x7 h+ m! h' s char id;9 _ T6 b: }/ z/ p, L
9 n S/ j) M, s# c/ ^: g Agent(char id) {3 s& n1 v* u: v- a/ U2 v
this.id = id;, J. H$ Y; i4 P0 @0 d% {! a
}$ J! l- h. o4 {/ q0 `% R; \& I/ X
0 E4 j" f& T% b+ ? public void agentStep() {8 ~& W6 F4 M# {; W5 P6 |2 s; t
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 t4 a: n1 F% c3 \4 [ }, W6 j& R# t$ V: Q
}/ K& Q* J/ M- P1 I' [/ D) ^8 T
, L8 ]. a: B4 \3 s/ g7 f }+ b
public class ActionGroupDemo extends SwarmImpl {8 b& i) b1 y# m$ \$ z
ScheduleImpl schedule;
4 @1 v: t8 q2 L$ H ActionGroupImpl actionGroup;
- @/ h& y* F( U0 i: Y# Q) T* B c ListImpl list;2 g* k8 E- f; t# N7 _" H
char Id = 'a';
7 R2 O+ V* `# R" H: X5 t9 u
7 t& |- l" q' |* d: [; R ActionGroupDemo(Zone aZone) {
: ~! i7 G+ j) y, n4 [- X# N super(aZone);
8 R* t$ J5 t, B T! `, ? list = new ListImpl(aZone);
: O }) `* _# u! ?! }4 | swarmSetp();/ ?/ d; y* K2 V# j' K" }/ u
actionGroup = new ActionGroupImpl(aZone);
" W8 S" a) @6 h) A6 [0 S- [ schedule = new ScheduleImpl(aZone);2 w3 J* ?* `8 |" q4 M9 \
try {* y! b% ]4 a$ L+ M4 B9 z' {1 {6 w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
S }( {, I( w" v7 N9 H' ~. T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% |3 H3 h# R" ~6 g/ b n
; s% J+ r/ V9 Y: ?& z5 A* c actionGroup.createActionForEach$message(list, agentSel);
4 h& B7 R' L: t, I4 s; q actionGroup.createActionTo$message(this, swarmSel);; K- |( p9 b9 q0 X8 B, ?
schedule.at$createAction(0, actionGroup);3 h; k, @5 D, b
schedule.at$createAction(1, actionGroup);
O* R8 s. A) l, m& ] schedule.at$createAction(2, actionGroup);. V) s9 T) O) V
+ v5 I$ K E# s6 t
} catch (Exception e) {1 K8 G# Y- T0 e. Y |# C3 D, b
e.printStackTrace(System.err);! d" p' {: I/ d1 C: ^5 Q
//System.out.println(e);" `! _& I. m8 t5 @
System.exit(1);2 o2 F [4 }3 v, }( z; w
}+ m# p: {& r2 G% W1 |4 x5 N
% {% i+ O. @' p" l) S4 |- {0 j, X6 D9 w4 \2 y2 e% a8 V
}' v6 {" x! {0 H; P/ g( f
- v* k9 j' m& h- c( I( l
private void swarmSetp() {
% i$ @8 Q d4 Z list.addLast(new Agent(Id));7 v# k4 y, k0 V/ t
Id++;" x- S+ I# K9 v6 \4 r9 f& ~! B( I
}
! b4 K) ^1 c, }: i* F- s% w* P; [3 ]5 J2 W. t- ]4 `0 E7 m
public Activity activateIn(Swarm context) {& i$ N9 u7 G' G! B2 C
super.activateIn(context);
; @ h1 M( V9 q6 q K B7 J; d schedule.activateIn(this);% @! _8 Z6 ?6 K- _) j8 o
return getActivity();. T! u! M9 N8 N3 K, Q! ~! y
}2 R" T0 A& \3 s! w& v
% `0 z. ~4 Z! \ s
public static void main(String[] args) {% r' ^$ y- x! I
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" B! ]$ v/ K7 ?$ I* P5 ?
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 Z3 a9 x" K4 S
swarms.buildObjects();
8 |7 Z# ^$ E+ ]! t1 r( Z# i swarms.buildActions();
: C/ V* ^. f0 Y9 | swarms.activateIn(null).run();
) C: g; D& L6 t7 Q }+ G, U3 G, D7 ?; k3 h, X
. ~8 y8 P$ V2 ?% s; C
} |
|