|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 Q* e. u. l9 p# `+ C- A: j
$ s w6 m& L6 G) |* z1 Q% R4 n1 s9 k9 Q' @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! l4 V% Q m+ D5 k+ @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 h- m( j `' E& }0 vswarm.SignatureNotFoundException
$ n! Z+ e1 y V' @* i% r at swarm.Selector.<init>(Selector.java:76)8 T* g9 W' [" S: w+ D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ W* d: Q/ p* i1 C0 q/ E3 P8 N- P at ActionGroupDemo.main(ActionGroupDemo.java:67)/ {" p" a+ J) Y) x
+ @9 {3 Q# s, A/ H
3 `1 [0 K* a. e5 u. Rimport swarm.objectbase.SwarmImpl;' t; [$ ]/ N4 s) M
import swarm.objectbase.Swarm;
/ [; j; f% V3 J& @0 M/ gimport swarm.activity.ScheduleImpl;( S2 M+ H) t3 w- A" W5 e
import swarm.activity.Activity;! s3 D- E: p/ k
import swarm.activity.ActionGroupImpl;
9 y4 p; p0 p& ?' ?! C# Simport swarm.collections.ListImpl;
8 O0 }& f K- B. E. D t( }import swarm.defobj.Zone; + [, X' W2 \: h3 x- a
import swarm.Globals;* u1 N' x2 D4 V. {! x9 C+ j
import swarm.Selector;
: K- L0 r1 u1 W( pimport swarm.activity.ActionGroup;
5 L, y* | r% o7 C( z# [6 Gclass Agent {# V( B9 u( c* E% r% o' S
char id;
) s- s; J/ e& f6 @; v$ D8 G, Y* R; _0 l& o8 d8 ~
Agent(char id) {
1 T6 H$ A% ~) e& { N) z/ n this.id = id;+ s0 l+ [4 c- M: ~8 v z4 q2 v
}; K* w9 g8 p5 }! _
( C7 G/ W( A2 C$ p, {. i3 r public void agentStep() {- ?- I, `2 X6 v
System.out.println(id + ":" + Globals.env.getCurrentTime());
: p( y1 a0 y, @" J0 q6 f' Z/ ] }
; E8 x1 ^4 ?% I: F: {} U. L8 A0 H. _. d. I* Y
# U) ] }7 t6 o
public class ActionGroupDemo extends SwarmImpl {
7 G9 a& f. @* I4 M9 p4 @ ScheduleImpl schedule;
' v" i+ t! N/ E# P- p& E ActionGroupImpl actionGroup;, a t3 Z8 y, \' z ] P4 Z: I! X* S
ListImpl list;
6 x" G* i" b! r9 } x7 W8 J8 ~ char Id = 'a';
& ~2 w! M9 ?) Z8 n9 s' E
$ ~2 Y! P0 w4 D* Q ActionGroupDemo(Zone aZone) {6 P4 J1 m; {/ y5 M4 T+ P4 _
super(aZone);6 Y) L0 q( s% A' p: M. I t R
list = new ListImpl(aZone);
; _7 n* U- [# F* e" o swarmSetp();
' M3 B8 J0 f/ J1 p# c/ h actionGroup = new ActionGroupImpl(aZone);
4 H1 M( \2 s: ` T4 [8 z schedule = new ScheduleImpl(aZone);" ] J* t h* }, J3 ~
try {
5 e2 p* b( l/ q6 C' H" t& I; f( s/ ` Selector agentSel = new Selector(Agent.class, "agentStep", false); _) e: H5 a* r9 m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 X* P1 ?/ _0 I8 @5 F. y
: {/ H! ?3 ^7 o, O actionGroup.createActionForEach$message(list, agentSel);
3 l6 j" b1 x" y. I& K0 b actionGroup.createActionTo$message(this, swarmSel);
( ^% `; a6 S( x( f schedule.at$createAction(0, actionGroup);
! {, V2 v5 n/ E schedule.at$createAction(1, actionGroup);
% `: n$ ^1 b: L ?4 D schedule.at$createAction(2, actionGroup);5 d+ F2 b% W( E' r* p) v
& b. U) e U( B; R! q x& }$ m } catch (Exception e) {: K) l/ K7 w; d9 a: @0 O
e.printStackTrace(System.err);
, P) G/ e$ ?) Q6 S$ _' P //System.out.println(e);
, z' B+ L: P. O2 }4 F System.exit(1);2 ^% _0 w# J8 Z- n# O8 v
}
* N, R4 U, h5 t4 D" U- ?0 ^0 k* }! i7 q
3 j) y( X9 u0 z
`4 U4 f9 |" k$ o3 d! r }
: Y$ e% Z7 M6 F( w8 D/ |! g& ~/ K% U# ?0 }5 d X) O
private void swarmSetp() {' ?6 K: O3 z9 H' O& Y) O
list.addLast(new Agent(Id));7 M& a T w# I, ]6 y& e
Id++;2 k! M$ i# o# b1 l( e# x+ W: V
}
' t/ j) N9 c5 H4 l* ~
- l, K5 C( F) H. U) n2 Q public Activity activateIn(Swarm context) {
6 R5 P# l+ n6 g- E/ [5 F- s super.activateIn(context);
, \1 Y$ r/ F& o& r schedule.activateIn(this);
U; }5 o4 Z) ]% t. Q- m4 m. d return getActivity();7 ^: H2 n, F$ t1 V$ t
}
+ t+ |4 S" t6 ]- p0 y& D$ b2 ?. K% r
public static void main(String[] args) {
* N9 C4 u7 l7 E( O6 }! o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 a5 Z6 H+ R0 M1 U/ y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! u0 h# V# y$ _( U swarms.buildObjects();$ e: i: B0 h) `. W# y9 [* d; W8 [
swarms.buildActions();
% }. G7 K3 P r( Z+ z* O9 V2 V swarms.activateIn(null).run();" |5 y+ j h( Q) d
}
# |: h X$ m1 T( r
& {* [! {+ ]) {) E8 V" L* _. F% U} |
|