|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 p2 o( j8 W% Z6 R* b& Q d# V7 c" w6 A7 C" a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& H% a- d& L1 p+ f2 `9 T q ?( v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 h3 J% T5 o9 Y. _, s
swarm.SignatureNotFoundException- j9 q0 F6 J" U+ O
at swarm.Selector.<init>(Selector.java:76) p H: A* [, D E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Z8 j$ V4 x3 V5 n" e at ActionGroupDemo.main(ActionGroupDemo.java:67)) |: ?: ^" D) r
! p9 j- w9 n6 w5 e
" P: B6 l/ J( h/ [, x. l" a% I) Q
import swarm.objectbase.SwarmImpl;
4 B6 B1 O2 u3 c/ k) z1 eimport swarm.objectbase.Swarm;+ v4 p' z1 y* `5 q. b9 H! O/ k: ^
import swarm.activity.ScheduleImpl;
9 U" O7 u0 H; |7 Y' l) l+ j I/ limport swarm.activity.Activity; t/ I, P, r% k- n3 Z" u& L! ^
import swarm.activity.ActionGroupImpl;- l/ j$ Q9 h, v5 g
import swarm.collections.ListImpl;7 e. E: Y8 C5 c- v [8 t
import swarm.defobj.Zone; v" q. [) v" d, S1 n
import swarm.Globals;% L# a3 y+ r8 @" Z1 M. k
import swarm.Selector;
0 n& Z5 o2 {% s0 k- D, y& y4 H, j5 dimport swarm.activity.ActionGroup; 6 G4 {) j7 ~& M) V1 a5 Z
class Agent {
2 |. m, I! _* [1 S! l$ s char id; p3 }6 e8 P5 d; O& j
2 q" `. s# c7 g. a3 s$ t
Agent(char id) {" j3 O3 Q6 v: u4 v
this.id = id;
+ j3 z; H' r' Q4 y _ }
8 O' a" R% L, o# l6 D# ~5 U0 X; w
. _, ^9 h4 T/ W+ Y/ C9 N) g+ [ public void agentStep() {
# d- U& o5 Z2 K' { System.out.println(id + ":" + Globals.env.getCurrentTime());
% c: {: a8 K- ^. o, W' K; O }
+ l+ c. N/ ]' n" w0 W/ S}
( l( F+ F& x! V4 I
0 J: w+ t o2 L7 _public class ActionGroupDemo extends SwarmImpl {
$ h. o. j6 G0 h/ ? j% N8 W r ScheduleImpl schedule;
8 s, T6 r" ?& G( M ] ActionGroupImpl actionGroup;7 k6 n! f/ A3 L, p
ListImpl list;
& b: e0 V9 s. i# ~% ] char Id = 'a';' H# b( t" [ Z
( H: ^+ C" o k7 t; G4 |
ActionGroupDemo(Zone aZone) {
# v! t& a6 }0 D0 A/ I super(aZone);- M9 j2 P# S3 O( {6 n6 d, h
list = new ListImpl(aZone);
" f# Y( v8 R; a o5 M7 i1 r5 c- Y swarmSetp();' V# l. O% S$ t0 `) G1 W7 u1 M' ~
actionGroup = new ActionGroupImpl(aZone);
4 V+ M, k* v4 r8 H; Z% s) I' C schedule = new ScheduleImpl(aZone);
! d- m1 V+ \( c$ }/ a try {3 ~; k* Y& a0 {
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 Z$ ?0 t, V- R9 b6 n# t7 ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 B$ f& h+ L2 Q( v1 r ( `4 u4 q8 B5 J
actionGroup.createActionForEach$message(list, agentSel);
7 j3 B' V$ ~# e) w2 L actionGroup.createActionTo$message(this, swarmSel);/ [" ?: Z+ S' s2 }# a/ G- M
schedule.at$createAction(0, actionGroup);
( a" A1 I K7 }$ X( y& O schedule.at$createAction(1, actionGroup);
! ?+ }# H1 q5 \. }( f' q1 R& N3 v5 h; { schedule.at$createAction(2, actionGroup);3 L4 t! Q: A$ B: [& v; i: }
4 J7 U7 _6 s7 l' c a } catch (Exception e) {# q2 e% l1 j( l0 w( v
e.printStackTrace(System.err);0 g# g+ G6 z* Z4 a. Y: r- f6 y$ |
//System.out.println(e);
% N9 c, m F: |2 g System.exit(1);" o e% e; |" l9 ~5 U+ B* J
}
4 f; Z3 R3 _) P$ ?0 R3 I) D2 j3 c; ?2 U2 f9 Z9 {' J' S
( c$ `4 F. D& Y1 k) r) f }" t) {/ t: k) |* N2 M+ @& Q: K2 k& Z
4 Q: m1 z7 t8 @5 H private void swarmSetp() {
8 ?6 p. c; t% m" a# G list.addLast(new Agent(Id));
4 E9 j# w& D; j! q+ A* ^# A/ S+ F Id++;2 V' R2 U. `8 \) [( {
}8 b/ Z- {/ {; O. ]% W; U5 M
# J9 ?9 y( N$ V; h2 z8 Q
public Activity activateIn(Swarm context) {
1 k3 x k5 }" z8 [& ?4 Y5 Y/ ^: ] super.activateIn(context);$ `$ j- y: @( }/ L7 i" T
schedule.activateIn(this);
6 ^5 W2 K5 m4 q! p return getActivity();
' z% {: N$ P+ n+ I6 X }
9 S% a: Q3 @+ ^; ?2 [- R2 e" o3 H% z8 M8 L" R$ G0 I/ W
public static void main(String[] args) {
/ r( K9 z8 H7 Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: C6 ^1 ^7 r# q5 h- a: A3 }. N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: b1 h' [" f; n; _: O0 c5 U
swarms.buildObjects();
. l9 ~( l, ^, u9 c; m swarms.buildActions();
+ I7 S; m, L, T# g. _ swarms.activateIn(null).run();
3 P- J3 D5 i/ c" u2 I2 T }' v0 t0 Z" l1 P) }, s) U3 \
( G% r) y/ b- j) I0 X( t
} |
|