|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; j3 }" ~8 f$ [: y
, j9 h: f# x3 l4 G. Y: J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 t- O4 t$ d1 L" h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) f& a0 ~% t; y& S
swarm.SignatureNotFoundException5 k4 s/ E8 p! m/ x) ?
at swarm.Selector.<init>(Selector.java:76). d: `+ N/ j2 _3 r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 f% X, k( s7 J2 B/ g" \: X$ O
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 P* `7 o5 h# z) h4 o$ a! K
/ A8 f0 B- Q1 q3 T8 E) N9 k
' Q8 A! p3 R/ q' K6 v, ?3 c- E, W7 {import swarm.objectbase.SwarmImpl;
! s4 R+ }/ H$ P; pimport swarm.objectbase.Swarm;
5 j4 C' R* r# [* p i2 P! rimport swarm.activity.ScheduleImpl;0 ?' t' M. e8 _1 k( G7 |
import swarm.activity.Activity;& Z$ ^0 P5 D7 P t5 ~* ~6 ?- { B
import swarm.activity.ActionGroupImpl;, U, U: j2 E# [7 J: x0 G
import swarm.collections.ListImpl;
. m7 I3 v5 V/ w; w/ b# K/ aimport swarm.defobj.Zone; % l6 [! ?. A) ?; e6 s/ ?
import swarm.Globals;
8 e4 x% `6 H. H2 limport swarm.Selector;
" O- p2 {- V( \import swarm.activity.ActionGroup; ; f" u( @$ q3 i: @
class Agent {
- r, H k! y d) t: r% H char id;" h7 s. C* |0 Y$ n! O _+ F
H8 T4 u! I8 M# P0 S7 c
Agent(char id) {; ]( m3 O9 p! M3 |& S
this.id = id;
8 @9 V+ l) F6 }: D) L y; J5 e }
$ }' m! K9 m( i/ U/ ?
8 I- H" x* y- Q( P/ E public void agentStep() {
0 B7 ?9 u/ v3 u4 A/ j System.out.println(id + ":" + Globals.env.getCurrentTime());
# A5 @! \: J9 w* y, ~& g }, ], n l9 h n9 `9 x& l
}5 b, Y% E. A% P2 F$ q( n- x' V
7 c- \/ Y/ u3 }+ I0 p4 s* X0 r
public class ActionGroupDemo extends SwarmImpl {1 d- v" f( i8 g! a$ j
ScheduleImpl schedule;% S% p e( d( Z( L3 g# ~+ D1 [
ActionGroupImpl actionGroup;
7 n- w4 I4 S" l( {/ S' I ListImpl list;' ]! k, V, \) Y- A
char Id = 'a';
* Q) S5 ]2 Z. i( h" ^
% `2 g2 C( w" N) W0 T7 a. U, I s ActionGroupDemo(Zone aZone) {. i, ~1 y5 y E1 B
super(aZone);
* d) ]" B2 O1 }/ K. p list = new ListImpl(aZone);
6 z4 Z6 x) C) Z; W swarmSetp();
; O; Q/ K. O% I actionGroup = new ActionGroupImpl(aZone);+ H0 P/ b& E0 M( m7 n& w
schedule = new ScheduleImpl(aZone);) o! q- R5 V' _2 y8 J
try {. n& l, o$ ~0 h" L' s. F6 U4 Z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ e$ r; n$ @( q; M$ {' W; B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 q) w9 `/ i* G# ^' X
( B# o( }6 q. o) D( N- T$ D* W actionGroup.createActionForEach$message(list, agentSel);: S& r* X( _7 b$ Y
actionGroup.createActionTo$message(this, swarmSel);& V( {' U6 E3 O
schedule.at$createAction(0, actionGroup);
: E ?* v4 u& q& ]1 c" ` schedule.at$createAction(1, actionGroup);
A# g! x0 S4 b. W7 P) \ schedule.at$createAction(2, actionGroup);0 T( N! n3 y3 Y/ z& @
& e: A4 `4 C2 l" I$ X
} catch (Exception e) {
5 H% m- x1 i! `, \, U* d2 A e.printStackTrace(System.err);
5 z# k/ Y7 A; S9 R7 [ //System.out.println(e);" y2 [4 o" s- I9 ?/ n" z
System.exit(1);1 F% B2 E' M/ ^
}" o5 T8 b3 J. C* h. z' @
2 L! S4 O% \7 D) Z E. k
* N0 S, O0 {9 ^/ k. ?' @/ l' G) N
}- ^, Z/ D: y( v
1 Y( D5 @( v+ C9 l( z( v9 ]4 y. Y! }
private void swarmSetp() {- p* `8 U7 N; c7 |( o& W
list.addLast(new Agent(Id));
8 G- q7 q. A- M; P6 h Id++;0 C. ?' G& z4 h0 D" S
} F. I; [+ r' h8 `& _ h) p$ G
# o; j7 e5 ]% n2 C
public Activity activateIn(Swarm context) {
5 o# S v. @* ?; b; E6 n. u, T T super.activateIn(context);
9 A7 J! Z+ j+ V% `$ `2 n schedule.activateIn(this); T3 M2 v/ N) o: n+ [+ m
return getActivity();
+ d* p, d2 h" G1 Y6 S }7 X5 s( V8 p0 _
6 D8 h c8 F+ V; p3 K% d6 W
public static void main(String[] args) {
8 B( h+ H# n/ n. J. r) }/ B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ W- x- o l) n+ y( `1 r* q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ ^& T5 a+ N; d: D, t
swarms.buildObjects();( A/ Q2 o! h* O: T2 E& }: c& P0 p
swarms.buildActions();
7 _4 P, S# e% ]3 l% N" j8 z; V5 J swarms.activateIn(null).run();4 K& i* ?0 R: f. C2 \2 \4 s9 y
}* o* C& n' i+ Q7 v* r6 m
/ }' I6 n- N( V: J6 v
} |
|