|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# {3 g- y# ]* i% U
- O3 a% a8 a9 X' s0 q* D( ~1 _0 \7 U. _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 ~7 ^7 K9 k9 I+ ?, d7 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ T' Q) t5 }" `
swarm.SignatureNotFoundException
3 D) [. P0 U2 n2 n, ]- S8 ` at swarm.Selector.<init>(Selector.java:76)4 y v/ _1 C5 P' C8 ~! ~6 w
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ M; y6 j+ s9 ] w. f
at ActionGroupDemo.main(ActionGroupDemo.java:67)5 h) l: p; m! u! A l8 |) {# Z
+ {" }8 R1 b, e9 _. l
! C0 O$ L- z& h/ U7 oimport swarm.objectbase.SwarmImpl;5 E6 E1 Q8 d" g. A9 ]/ z4 [: g+ \
import swarm.objectbase.Swarm;
8 X- T3 n4 Q, G# Y! F& P8 c) ]4 |import swarm.activity.ScheduleImpl;2 l4 t9 O$ d$ p" p5 f+ O
import swarm.activity.Activity;
3 i7 I! d) N4 r5 [- }import swarm.activity.ActionGroupImpl;
/ I( ]; _. j5 z; jimport swarm.collections.ListImpl;
! Y" ~: x# { M1 _6 h: kimport swarm.defobj.Zone;
0 Y# n/ a7 v4 i p3 x3 O" L7 C: T3 eimport swarm.Globals;% p0 H1 J1 r; z$ m5 b
import swarm.Selector;1 q: p) B, \+ z. ]3 _7 o
import swarm.activity.ActionGroup;
# R) ^" e2 r9 e1 F. sclass Agent {
5 r5 `$ l+ V4 _7 \ char id;$ u1 V( C3 j' k: ~
" o2 i5 {3 p+ F8 e, |' H% U
Agent(char id) {$ k# e2 j. }/ M8 [
this.id = id;
1 s) Q$ V- H: R3 P; p( H; Q }
, S. |4 V3 u& g
# W- G% |# }4 C9 X public void agentStep() {; n8 c& K- e1 \- h, l
System.out.println(id + ":" + Globals.env.getCurrentTime());
; D( X0 G8 Z5 T* B }
s I0 {: l9 J4 C}
$ n1 ?! x2 n% G
4 w8 T$ k+ V" r3 Zpublic class ActionGroupDemo extends SwarmImpl {
) n5 o k8 \; J& r0 n ScheduleImpl schedule;1 m! O& `8 K- B1 B( [
ActionGroupImpl actionGroup;
1 S4 t! O6 {9 |6 y4 d ListImpl list;
x, k9 h5 @$ n/ G+ j char Id = 'a';
! b; o* f2 n* _9 `4 ~! [ F
6 q+ f7 Q, z- d; l1 w& X8 M ActionGroupDemo(Zone aZone) {( _6 S8 y0 I' T: p) Q4 O
super(aZone);' A0 k" j: s8 g" w+ Y! H- K3 L
list = new ListImpl(aZone);7 y. k" c8 q6 P# s" q5 |' X
swarmSetp();
e* _8 E, T1 ?8 U6 G% U actionGroup = new ActionGroupImpl(aZone);
0 ]0 ^" N' O' e6 l1 \ ~+ l8 B schedule = new ScheduleImpl(aZone);& L8 P) c8 S( ~( ]$ S
try {" ?1 X5 @* |9 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 n5 @" q+ U% F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. F. k3 m; ~* f* T0 M) S# v& E / F# T' F" z$ \5 z
actionGroup.createActionForEach$message(list, agentSel);
% z+ \) C" A7 `. h6 P actionGroup.createActionTo$message(this, swarmSel);2 ]* ^* r7 |$ c- ^" O
schedule.at$createAction(0, actionGroup);
! u, E. {! | R) X. V: ? schedule.at$createAction(1, actionGroup);5 u/ F- T. N* d3 M) h; u5 q$ }
schedule.at$createAction(2, actionGroup);
- c8 E+ X" [6 h4 b$ ~6 v. X; l; n% ]: V W( u/ _* H/ }$ L( E
} catch (Exception e) {
% K( s* U4 g0 H5 W e.printStackTrace(System.err);% ]) C* e. p% N1 f0 Z
//System.out.println(e);4 H7 q8 g: E$ n" |
System.exit(1);) u; x2 A7 M6 b3 W- M1 g5 r
}
/ I+ y7 e% w' h
. P6 s; K8 v: O. n/ b, t) D' C6 e* q2 \% X% Y
}
u; @9 V# z+ Q$ R* W7 L
4 F8 M. \7 {% q private void swarmSetp() {+ D8 y. L$ U( v# |* Z
list.addLast(new Agent(Id));
. }# Q+ C8 ~ n1 Q+ |, T8 A e% C) r Id++;
. z ^2 n- O' h; L# O* y( `3 E }
2 T' G8 s+ f1 r( q
$ P2 q6 @) G# F3 F public Activity activateIn(Swarm context) {6 z* C. r( v# t9 m
super.activateIn(context);! d1 n' T* |5 n ]4 w7 Z: F
schedule.activateIn(this);4 m @, i4 F" L$ L6 j* L1 P
return getActivity();
# Z8 A& ]0 d7 D) b }' L' W+ U, F! ^2 b" U
& V; c$ O4 b% u# m" x% e& ?& h
public static void main(String[] args) {% `8 N8 A* ~$ g7 v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% c! ^' C- G8 `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, w! l8 |1 r; m$ L9 j, K9 Y y% r swarms.buildObjects();( e9 D/ v5 x" b3 R
swarms.buildActions();& M; E T& k8 S8 c
swarms.activateIn(null).run();
% E$ q+ g' Y Z9 c2 b- X }7 T/ T/ e5 h* w8 G( N$ A
! W3 R6 R" z P' A" j- M7 y0 z+ z' z} |
|