|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 x% D: j) U6 o4 q
6 \6 U# I, N0 H' ^, w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; d3 ?& r, ~* H) Q, j$ P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 _! B" p" d: } J |& \/ B
swarm.SignatureNotFoundException7 Q# H0 d8 O1 {5 |2 U
at swarm.Selector.<init>(Selector.java:76)
7 t) ]# l6 h5 a! L( s' i' F# G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# \; |4 J/ M6 j9 _' b at ActionGroupDemo.main(ActionGroupDemo.java:67). R' S) t" r: ?. g ? `% ]: o
9 W L3 W8 h) m
1 ]$ V: {/ g J9 \& `import swarm.objectbase.SwarmImpl;
* X" E3 E& H; l9 oimport swarm.objectbase.Swarm;8 Z, u7 k$ F- w
import swarm.activity.ScheduleImpl;7 t, Y; K. @, K1 [6 v8 W( g
import swarm.activity.Activity;
- u1 C- H( p3 ]2 D3 uimport swarm.activity.ActionGroupImpl;6 r2 R& S5 X, V7 w
import swarm.collections.ListImpl;4 c- j1 w( X3 a; @, M6 `4 p
import swarm.defobj.Zone; 9 m, K2 w8 Z; ]/ V) Q6 D( W
import swarm.Globals;
6 R; q$ @7 |: a8 I+ x# Rimport swarm.Selector;3 ~4 S1 p6 i# l! e
import swarm.activity.ActionGroup;
$ X# T% h' |2 s& h7 G1 }; }class Agent {: p7 H- C4 y/ v& l6 Y5 K; a
char id;
/ \! b+ z2 @: l: m
" v% P6 S; L) p- C7 n5 l6 K Agent(char id) {, L' i- E3 A* q
this.id = id;
3 u9 \ U4 l2 ^3 ]6 b5 b }( k1 ~5 R. o' S( J2 W# G
" ~6 s) }6 W/ ~# I+ @% W+ e9 e( _2 F
public void agentStep() {
8 ^6 z. p0 j4 ` \) r System.out.println(id + ":" + Globals.env.getCurrentTime());
: r( L# P- @1 N }* p: y& }3 `# b' L3 H- s
}
" |$ p; k1 m/ O: o
3 H- g( Z: j1 C" bpublic class ActionGroupDemo extends SwarmImpl {
; a. E+ S* W) Z+ \) T8 G' z ScheduleImpl schedule;
: M6 Z8 u% t- d4 c/ d# |6 R ActionGroupImpl actionGroup;
( E, _ E% @" _/ K( a t ListImpl list;
0 s- @$ f6 ]( J* F4 R char Id = 'a';3 V- S# P2 o* I; L
' I1 m$ B# R5 h, I" T- O/ m
ActionGroupDemo(Zone aZone) {
/ X+ l [3 P3 N8 A2 g3 {& F super(aZone);
! m0 D, W" r$ K. _+ B/ x" a3 B' K list = new ListImpl(aZone);
2 F3 @4 M+ u7 J, F4 q swarmSetp();9 h2 \: k: H( F/ O
actionGroup = new ActionGroupImpl(aZone);
; S$ [4 U* H6 p G# G8 G- ? schedule = new ScheduleImpl(aZone);: |9 w4 c9 J! @& S4 y* g1 W7 C, ^9 K
try {
, r" H( x, D. x4 J& R6 x Selector agentSel = new Selector(Agent.class, "agentStep", false);: ?/ y) w* V* a$ P. _3 F4 G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 W; E9 f) _5 [9 F% w5 t, J) |
* w* w2 e7 o2 C# R1 o* {. G* @) @ actionGroup.createActionForEach$message(list, agentSel);( [6 \5 M+ d$ v: s W/ z) A
actionGroup.createActionTo$message(this, swarmSel);1 O% b% c- }: |3 |, @$ v
schedule.at$createAction(0, actionGroup);
: ~7 U/ T" D! o5 C3 E3 | F' l schedule.at$createAction(1, actionGroup);! l% `0 O$ @/ i: \ L9 o- x9 [
schedule.at$createAction(2, actionGroup);
) W1 U# g/ v) O: s0 n! ]( ^" E( _$ H0 ~; E" ]
} catch (Exception e) {- V8 J; u) {* ?( H
e.printStackTrace(System.err);
' [. l5 w( k6 F //System.out.println(e);
8 P5 m+ L# ?+ d System.exit(1);( X! b" @ ~! v) u( Q, V% x
}) B8 O9 X% c3 u7 S+ [& S7 }" m% Q
5 p" S7 Y' H# R) @
3 B$ ]# g) _0 Z% S) @; q
}
. k* k6 ?0 V% j0 m9 R0 H, @% ^$ i: I O S7 w' O6 \
private void swarmSetp() {' @9 ~" Y# ~5 Y
list.addLast(new Agent(Id));
( @0 F9 C* Z$ L% O Id++;
, Y' ^1 P4 ^2 G# t" e) \" d! C }
( c7 B; B- o4 M# f. U3 p) K, Y4 [0 ~0 q4 x2 A' B& i7 n* s
public Activity activateIn(Swarm context) {0 D! N0 |! \. M' b( y" c; ]# _
super.activateIn(context);
! ?$ n! y5 S& u6 E schedule.activateIn(this);
. F7 i$ t3 t# {8 \7 g K- c return getActivity();
+ g# f4 d. y8 E. L9 _' k! R2 K9 y8 m }
* L2 z O0 j# j# L' o; Y) ]
! W. f" R2 w8 h! R, U1 W public static void main(String[] args) {
! ~4 ^- [8 @( q5 z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" G1 p8 h0 ~! U8 J
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) p% v& ~6 o+ _ swarms.buildObjects();) t7 ^7 O" a) [+ g* O' A( L9 W
swarms.buildActions();
5 _% k& p* k0 y7 x a swarms.activateIn(null).run();
4 t, n) X4 m: H7 W1 S+ d5 z }
) X; f, y1 j2 u' j
9 ?4 t, d, c h" t} |
|