|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 Q* y: Z" I2 Z; G3 r5 u4 X" d. W: v! Z
2 R" P7 z1 z+ M( D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, Y _( C8 D7 k5 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 i8 g( Z: H7 C$ J4 Z2 {# D# k0 h+ ^swarm.SignatureNotFoundException( g+ c9 {& X+ s1 T( I
at swarm.Selector.<init>(Selector.java:76): ?) y/ M! {, D3 f3 c3 ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 _( {4 O- G. U/ Q6 X: h% Q4 e at ActionGroupDemo.main(ActionGroupDemo.java:67)$ w# B; p$ h w1 `' \
2 D& f& W* h( l0 O$ U* y+ w, E. j
6 _( U6 v1 d$ e3 a$ _6 C+ D. t
import swarm.objectbase.SwarmImpl;
% J3 S7 w* N+ m- e+ limport swarm.objectbase.Swarm;/ ^1 G; E9 [ _8 l% f
import swarm.activity.ScheduleImpl;* [. y0 X2 H5 q9 p J7 a
import swarm.activity.Activity;2 K, F' C+ y* P: v ^) z" h
import swarm.activity.ActionGroupImpl;
8 T9 m0 u/ H4 @! Timport swarm.collections.ListImpl;; B/ t5 J) _' t" F/ A, u
import swarm.defobj.Zone;
. r2 X) P' d, O) k' Timport swarm.Globals;
- `: V; v( g& Timport swarm.Selector;
; k1 P- @6 s* g3 C& Timport swarm.activity.ActionGroup; . k6 R5 s9 W; a4 f; z+ A
class Agent {6 @# {8 `0 L% z0 f4 Y) P8 h: v0 \- k
char id;
' ?5 h/ D$ j' S: A4 K. \2 Y& a+ o
" y! ]( m0 j3 {% \" l* p) l; W7 K Agent(char id) {
* n2 u7 x0 s2 O7 G6 O* B this.id = id;
: E! T% o# K0 f1 U/ |. r+ o }$ W0 W4 o: q {% g5 |: |
& ^# d2 |7 v* `1 Y* m' k2 q; O
public void agentStep() {
/ m% L* W# l% _8 n: X- o1 q2 s7 q2 K System.out.println(id + ":" + Globals.env.getCurrentTime());
; I6 q3 a! O8 g4 u* i2 x0 X }
. p# s! W% h: a. W9 s n3 n}
/ x. o- n. [0 ]% x
/ n u/ o) v: I6 ~2 ^ Jpublic class ActionGroupDemo extends SwarmImpl {8 y- \2 h9 {6 x# {% w0 |' K4 ~" o% S! c! @
ScheduleImpl schedule;3 `4 p' q }2 I: n9 ]- M4 Q2 ?
ActionGroupImpl actionGroup;
8 |$ ?( p# T% d, j' h ListImpl list;
8 A; v% B# d) J. D/ S char Id = 'a';
, ]5 J8 O4 o5 `+ d
$ o% j( h! m4 |/ [+ X; X ActionGroupDemo(Zone aZone) {
! G8 N5 E( t0 d( l super(aZone);- c- X& d* h0 d: w* V8 q! t
list = new ListImpl(aZone);
9 h% |( @8 T, I: A1 ? swarmSetp();
B6 h# a0 U. N( b3 D actionGroup = new ActionGroupImpl(aZone);0 A" V- F R$ z6 l. \2 [
schedule = new ScheduleImpl(aZone);
1 L/ E) H9 I% B# j( } try {
% Y" H: }- F$ Y* T [: w9 M Selector agentSel = new Selector(Agent.class, "agentStep", false);3 K' i' L8 }5 Q3 x1 V3 `, W8 Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 k# c7 p6 o8 Y4 \ 6 _" M/ R" p% r; G5 b+ g
actionGroup.createActionForEach$message(list, agentSel);
* C4 n* N0 S. `9 l* n/ N3 W t actionGroup.createActionTo$message(this, swarmSel);4 l* v' L4 j; R) _: ^
schedule.at$createAction(0, actionGroup);
" j& h+ _. `, Q7 k4 R6 ] schedule.at$createAction(1, actionGroup);7 n. j% M: o2 w# b% b
schedule.at$createAction(2, actionGroup);; S6 F' W5 P! P( P- k! F
4 I" }. U% J, R4 [. t' ` } catch (Exception e) {5 C( _/ ]- X$ I9 d! B Q0 U, J. C+ U
e.printStackTrace(System.err);. j$ D$ ~# n/ [5 y+ R# l
//System.out.println(e);
9 ]( @7 n9 z) p8 [9 g0 L& }3 q System.exit(1);
- ~- F& n/ \0 {0 @+ z+ V, p }
" V- s9 v4 W: K- d' K7 `. J4 x- t9 i" H% @$ v( |
! v. r$ t0 U& y }0 F' H5 h6 H3 S/ R/ E, y, w0 A
3 G& z) [ ^. W3 h _8 V private void swarmSetp() {
5 C4 p1 Q/ T$ g4 l! K list.addLast(new Agent(Id));
O* D$ |$ j5 M+ a% c Id++;
0 c2 J9 P' @* W0 k0 F) N8 D }# h: I! x2 k- [! ]) r4 ]' n
: ?& @ D! U" t" j' G
public Activity activateIn(Swarm context) {1 v& s9 b5 u& @9 ]+ D. g
super.activateIn(context);" R" w, d8 ~; u5 }0 ]
schedule.activateIn(this);* R, E" T: q* R, A" N4 l5 P* n
return getActivity();' Z8 } w9 w$ s X% Y. @( o
} g$ _ v! o0 K3 ^
7 q! N; t4 O v
public static void main(String[] args) {
' F. Z/ w9 \6 h* ^& x% b, Q# X Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" @ a% A1 _6 B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: B0 G) V3 O5 u/ G; H
swarms.buildObjects(); \4 y7 Z9 u+ @/ C7 p7 p" ]
swarms.buildActions();+ Q. a+ k# w9 O/ }5 ]9 f6 H$ \& r
swarms.activateIn(null).run();* \; o; }, j! T \8 a: A$ `0 K( y5 I
}! ^, o9 n6 \0 A: V9 C7 r0 F3 U
' J: E$ I5 F9 Q8 p6 [# {$ N# n
} |
|