|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 [7 H! L$ f5 _ c+ V! Y1 ]+ z3 Y$ l/ o( c3 B _ _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ l" l `1 f4 v) w: Y! `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( h. I: | p8 Q5 I
swarm.SignatureNotFoundException
/ [" R+ h& A. }- d, D* O at swarm.Selector.<init>(Selector.java:76)' u3 v, w7 ]5 h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 P3 T) T/ r; v" X
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% e1 z7 l- ~5 ^1 {: U0 l, H. w) q" \" n+ f% Y* R/ W# m. I7 O
9 v9 o( v, Y2 l9 N$ Timport swarm.objectbase.SwarmImpl;
/ Z( ?2 |$ ?7 s; z5 D( V6 c% N \: Simport swarm.objectbase.Swarm;
9 I( Y; n, S. E! ?8 K4 Y( Jimport swarm.activity.ScheduleImpl;
) z2 ^ |* l" m, }! Oimport swarm.activity.Activity;( |: w1 R$ N: m7 o% ]: o
import swarm.activity.ActionGroupImpl;- X; H' ?& g: M$ n
import swarm.collections.ListImpl;
. C9 p# ] D: V) pimport swarm.defobj.Zone;
) F8 s' h. m: r3 f6 g+ f, c6 Bimport swarm.Globals;4 b" |3 ?" D5 m: D0 L! f
import swarm.Selector;; Z! j* g. g8 W5 s- p9 E0 I0 B0 j
import swarm.activity.ActionGroup; 4 o0 v* @0 T/ p
class Agent {
! v: C7 q4 J" w: Q" } char id;
: b1 `$ f! Y4 C' U, E# g
* F r; q$ ?, {3 A0 }0 ~ Agent(char id) {/ a% v3 f! e5 ~, t: Y0 `4 ?' s
this.id = id;
. Q( F2 G8 E. P* S$ A0 d, x }
& k/ M9 R) Q2 y9 j7 u: Z
0 N) M! G; p+ ]8 r7 \+ \4 u public void agentStep() {
, ~; ]* ?$ a* [, x, ]# ? System.out.println(id + ":" + Globals.env.getCurrentTime());% S: V8 Y1 N* z( S
}
; {+ X1 F. Y' b0 x' k}6 U) h6 u+ k' c7 y0 ]
% w9 D( Q% }- Q' }+ l) R3 e, t
public class ActionGroupDemo extends SwarmImpl {
- ?1 N2 J7 _4 p/ E5 r! p ScheduleImpl schedule;' f8 ?) [ X# b. G: @+ |
ActionGroupImpl actionGroup;
5 y3 j6 P% b3 e ListImpl list;
h, q( t% e9 ?8 t5 C char Id = 'a';+ B; a8 c/ D, h' x" \; t: v
" z& `. U$ j! D, N/ S. w ActionGroupDemo(Zone aZone) {, ~" ~% W& }5 r! o
super(aZone);
$ u1 ?+ b9 {3 t P# m list = new ListImpl(aZone); j: }9 T! Y4 Y5 M
swarmSetp();2 m' ^, X N5 o
actionGroup = new ActionGroupImpl(aZone);
- w: {- R) y8 M4 t schedule = new ScheduleImpl(aZone);3 v2 Y# p) }% D
try {2 ^5 U" R* C; o8 K3 x* z
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 r' _6 v( y' _1 N; ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. {( R" t+ r- d! v- V5 T. G
$ l5 h9 V1 F; @7 ^ actionGroup.createActionForEach$message(list, agentSel);. F. n3 S/ \! P
actionGroup.createActionTo$message(this, swarmSel);
: t) z L% e1 K7 @ schedule.at$createAction(0, actionGroup);
, b4 S$ J7 \. N: n: j schedule.at$createAction(1, actionGroup);4 Q, V* O# H3 u' x; y t
schedule.at$createAction(2, actionGroup);$ u& [) ^* V' \( P, W3 z
8 y/ J$ @% m/ s/ L4 ]. ] } catch (Exception e) {5 W* W; ~$ ^) j5 `% k" e0 m! n
e.printStackTrace(System.err);
' @3 { x" X" J& y' k8 k$ O( K //System.out.println(e);7 J) m: `6 Y# ^% a
System.exit(1);* a4 C3 L6 c+ X: _# \! E# V% n
}
% _1 l1 S! N% L# H- @
3 o5 t; g; E4 ~. Q6 B
" Z! s/ I3 W6 l" k) m. |4 u }
) F; D+ N! S5 f) g8 k4 j
- U" c7 Q8 f$ E* S& k' \" l private void swarmSetp() {
* a0 B% k4 ^% q( b9 I list.addLast(new Agent(Id));) G2 o% Z, B/ Z4 w
Id++;9 D, A4 C6 [ ^6 k! Y! |
}
) E" C1 y; q: ]- o! i8 ~, J" J% y3 I$ i) G8 i8 X
public Activity activateIn(Swarm context) {
. e2 _! a( X3 z1 X super.activateIn(context);
9 \2 ^( @# E+ ]3 d schedule.activateIn(this);
* }' o8 {( S9 `6 I' P return getActivity();
) {: V$ ]; f; o5 X! Z7 V3 y8 P' D% f }
! H" I' J5 u; W4 B! R+ I1 W8 I6 O' q4 Y4 n
public static void main(String[] args) {
( b6 Q5 ?0 L! O: m, w, s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! e; e# ]9 K; F& R1 R+ Z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" B q9 z) }5 o
swarms.buildObjects();
8 X6 |' w; I0 f/ N& p9 ^ swarms.buildActions();/ U* a# Q$ \8 t; M8 L+ w" J/ S
swarms.activateIn(null).run();
: I- Q2 c6 s; s7 V) S }
/ c2 @0 r. ~4 ?# f2 F6 E$ o ~8 W3 [
} |
|