|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * q3 G/ h0 d/ g
( D4 ? \4 @* ~4 z: y+ s! ?8 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 f, P$ u( u& X% z! I' h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ u! K& ]6 d% f( @% k
swarm.SignatureNotFoundException+ _& w/ G8 [; l3 C, H
at swarm.Selector.<init>(Selector.java:76)
1 ?) V1 T T v- @6 z% ? at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# z0 ?6 j' O+ @7 [8 F
at ActionGroupDemo.main(ActionGroupDemo.java:67)- W D8 o9 z8 c% H% p- H- ^
: h# t1 T& s% C: [% R3 b
( ~# n# v3 K( b; |import swarm.objectbase.SwarmImpl;1 @9 r0 N' Z3 E/ o
import swarm.objectbase.Swarm;
4 ~1 I3 n* n5 K( F& gimport swarm.activity.ScheduleImpl;, Y. H2 ^* o: ^: b
import swarm.activity.Activity;
6 p F2 k3 D2 i+ G! g0 n$ timport swarm.activity.ActionGroupImpl;
' F" Q4 S3 V, `import swarm.collections.ListImpl;
# X4 X9 n1 |$ ~" Uimport swarm.defobj.Zone;
, \. D; X n% T1 t K- [. nimport swarm.Globals;
8 e3 N1 ~5 o/ A: T2 `import swarm.Selector;
! K- a* ]4 m5 h) l) ?$ i7 c2 Ximport swarm.activity.ActionGroup; 7 f% }: I9 h8 z1 w7 c& v
class Agent {
2 V U% r2 c0 |# b: H* v char id;
% f2 W9 E& C8 O
5 [' F2 g8 \) c Agent(char id) {
, A$ B' W. I( {3 t C this.id = id;
2 @; A' A: R- d7 G# M6 z8 e }2 c2 K2 n' M. y* s6 S& w
5 J% S( e% B4 G' x, o8 g public void agentStep() {
7 G4 h4 o7 ?% R" o. a7 R4 k System.out.println(id + ":" + Globals.env.getCurrentTime());3 N2 e: m& S* q+ i4 J* N0 E. [
}
) u9 y# f4 y& x' i}
! z4 Y: k+ G" m9 ~3 F+ l
4 Z9 {+ q+ u9 v, F: ?public class ActionGroupDemo extends SwarmImpl {
# c. A# d6 Q" K4 W% Z# J/ v ScheduleImpl schedule;" H, Q g6 h: h. t" M+ _0 }
ActionGroupImpl actionGroup;' P! {5 }0 [' j! n* E
ListImpl list;
2 J" N/ j- ?+ d/ ~; x char Id = 'a';
. A8 k8 m/ e' Q* E( w* Z4 N6 S1 s6 c$ M, _/ P/ ~& ?- G) F
ActionGroupDemo(Zone aZone) {
( J+ w8 ^2 v1 ~ super(aZone);4 ~, S& Z: E& T1 i8 j: i/ ?: V1 @
list = new ListImpl(aZone);, b0 Z/ O" s7 I, c1 R) m
swarmSetp();& x% m8 X5 k, A8 H7 `$ I* v
actionGroup = new ActionGroupImpl(aZone);
7 ~% l( C1 Q+ p* I; i schedule = new ScheduleImpl(aZone);8 y: @4 ~ ~+ {3 ^3 P8 F
try {- J$ d) E8 N) ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);# R# K- f4 ]1 O( Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
E& N* i) n3 g
; l9 l. c& V- m. m actionGroup.createActionForEach$message(list, agentSel);0 @9 ?8 g" z& I
actionGroup.createActionTo$message(this, swarmSel);7 B7 A3 g3 E- K" @* G
schedule.at$createAction(0, actionGroup);
4 {4 w q9 v1 r8 c4 i schedule.at$createAction(1, actionGroup);0 Q2 k; M% b& {8 r9 p
schedule.at$createAction(2, actionGroup);# D; v3 G9 t7 I, E7 B7 J* v
+ W4 u, K6 T( [$ U% G; @$ f
} catch (Exception e) {% j+ f* ]' ~& z. E
e.printStackTrace(System.err);
! X' U P5 {. L2 ] //System.out.println(e);
3 E" C) E: Y$ L. ~2 T* ? System.exit(1);
/ H# _" [8 u! \& [1 V }
y& O" c. u# n% y; V5 r& W. h6 O$ K# G: F0 H
5 v5 V! X8 ~) K' c9 @9 \ }
" ^% O( {" u, g' r: a
9 ?5 E& K* i3 u1 C$ d4 a% A2 G# W private void swarmSetp() {! W/ Y. S3 _% @
list.addLast(new Agent(Id));( x D' `6 W o: P
Id++;9 b/ }9 j7 F- U* t2 x
}2 b& u9 a+ p- x6 v
' P# U9 M& }* I! s
public Activity activateIn(Swarm context) { z% ]0 m2 B- u6 t& T3 V* U
super.activateIn(context);1 @7 h. n- ^& t: C- u% R' B
schedule.activateIn(this);& T' M) e4 X. l. C
return getActivity();# K5 h8 M+ q: l3 c" w% x& s
}
+ G4 [8 u/ X: d) C/ W$ K' m
# v7 A" ^- ^4 V# p' [0 K public static void main(String[] args) {3 U6 g4 @) K* s5 t, v/ z8 y, E
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ b/ J% O) Q3 v( ~3 A1 p6 l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 K) @! G. ^5 L% M2 x
swarms.buildObjects();
/ _2 o8 R! l9 ~ swarms.buildActions();- u; H) {9 y% C0 ~/ F* Y4 u3 {
swarms.activateIn(null).run();8 \% N6 }! Y* i& l7 f G
}
! Q' ~' A- Q8 y8 M; d9 T3 F0 T! k. O0 |7 A# d
} |
|