|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / x( }/ m; y; t, L9 G4 |' e: u- r: c
0 |7 x t, a( P5 i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 T0 z9 J) ]! K% W: I( o9 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, T& V: Z* }+ m9 s; ?* Rswarm.SignatureNotFoundException
$ u' D) O+ R6 l9 k+ L% H- C, u. [ at swarm.Selector.<init>(Selector.java:76)
% N" L3 m( |! D at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 t- E1 l* N% j, `! B at ActionGroupDemo.main(ActionGroupDemo.java:67)' e9 S" {9 H1 s; f* R/ M2 f
" j7 n8 Q# `" k4 a+ F8 o+ ~
, S" ~& p( _- b& z0 e
import swarm.objectbase.SwarmImpl;
* @7 y. O) [" W5 Y7 u9 F9 Fimport swarm.objectbase.Swarm;
9 h% e( V( B! _% m) d1 \7 V2 Fimport swarm.activity.ScheduleImpl;6 T% ~% K6 g: Y: ?* L d7 O
import swarm.activity.Activity;8 D; E4 `- a( P9 S' U9 c& o& A5 C( T
import swarm.activity.ActionGroupImpl;
: A4 n4 d% m$ I: | B, himport swarm.collections.ListImpl;
' C0 Z: A( E! X4 P+ y W# l, K9 Mimport swarm.defobj.Zone; 5 R( e' g8 K4 ?1 ]4 T5 a- w2 q
import swarm.Globals;
; l0 n/ B- I- `" G8 x. F) c# \import swarm.Selector;
* d- p2 `- n. Pimport swarm.activity.ActionGroup; ; z) L7 ^8 Z) h: x9 ~% r: U
class Agent {
; g; ~2 X* l, e) H$ ^4 l char id;4 C* \. P J! ^5 I
1 v# q L$ D: E) p
Agent(char id) {
( u/ x h$ a# b this.id = id;
% W* K" X7 j; C' t; e& y2 `: u( E* ] }0 Q- E/ t9 U( f a* \
' H, L* k# O* h& i# P7 e+ e
public void agentStep() {
3 ?+ G8 e! r1 a* n* @" \9 j System.out.println(id + ":" + Globals.env.getCurrentTime());
) v% D- B; A3 `: F! V }8 _, M3 V" |8 P s- E% R# u3 z. O1 k/ t
}
- `1 W0 C3 U9 E+ J3 f' P3 ?/ O8 O/ h2 n5 w% ], `
public class ActionGroupDemo extends SwarmImpl {5 j; L6 ]) ?8 Y X+ v
ScheduleImpl schedule;
1 z7 P% K- w6 l4 K7 S& K. ? ActionGroupImpl actionGroup;
& f* C% K! K3 J ListImpl list;
( d3 K+ M# |$ j" W* W3 Y" F! N7 J6 q& v0 Z char Id = 'a';2 W8 e+ X; a# y6 U$ i! E) q! |
; R- f' w) @' p6 V ActionGroupDemo(Zone aZone) {/ u) w* c3 N5 o1 o- ]# \
super(aZone);
* e' |; K3 [6 n! @8 ? list = new ListImpl(aZone); G, V$ h3 n) Q, K8 Y% \: i# t
swarmSetp();
& _& C4 q7 P' F: x. U1 o actionGroup = new ActionGroupImpl(aZone);' E1 N' J" S& T- g
schedule = new ScheduleImpl(aZone);& m: e* V% \% Z8 B2 n. W* y5 u
try {6 \& i' ]" ^* |0 |3 r2 M
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ J* _1 h& |& T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ c8 {% T3 y, ~1 A
% K: d8 d- S5 S/ v1 |0 s actionGroup.createActionForEach$message(list, agentSel);" y5 ^$ O. E; `2 T! ~) G& M
actionGroup.createActionTo$message(this, swarmSel);
: P* m; \0 Q1 l7 f schedule.at$createAction(0, actionGroup);1 O/ U1 H" y+ e9 ]
schedule.at$createAction(1, actionGroup);
# M# U8 b! N1 y( L# Y schedule.at$createAction(2, actionGroup);6 {! U2 v( ~) a- _/ d( d+ o
: S: M0 ]" y4 |) Z( m( h+ f } catch (Exception e) {
. M- Z: i% d9 n7 G5 J8 s e.printStackTrace(System.err);. Y- n0 g* m; [ R6 ]
//System.out.println(e);! i7 W7 L4 c- e+ ?
System.exit(1);
! v) B: e$ q: @, h5 x }& l {7 v( ~2 J5 ^0 b% }3 x
6 a9 @4 F" ] E. B4 X0 }1 P; t; N7 @3 J) u
}1 o9 ?6 ^1 P% I$ E# F% D1 y; o
. i6 ~& s k1 {1 } t) g) b
private void swarmSetp() {
: [/ J: i5 u& ?8 i( {- W& |# v. j- K list.addLast(new Agent(Id));
% H4 r; C4 w/ c( A7 H Id++;9 F. ^9 Y9 ~" Y( F) h
}
' z1 w$ {0 r4 T$ H$ U1 p
# T+ m# Z3 z2 K# U5 B# | j9 G public Activity activateIn(Swarm context) {
6 B: ^. [. \$ v4 M5 h6 w2 w super.activateIn(context);0 |1 O4 z/ {. B
schedule.activateIn(this);7 g% J7 Z# R @( T
return getActivity();
! C5 J5 l9 T% o0 E/ R }' x) `6 X: ?. L2 S' m! F
" ^2 d7 ?) o" r6 F q# h2 z
public static void main(String[] args) {
% w* }7 t1 i: a) J0 Z* M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 b& C: ]" f" @# ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 p% c6 c1 Q4 g& @ d5 x
swarms.buildObjects();5 l. |/ ^6 G1 H9 b
swarms.buildActions(); m. O! \# s1 b( @6 m0 r2 m
swarms.activateIn(null).run();8 i7 v1 k- f2 l7 w: J# b) o+ C
} `) w4 z& B, l% x, D4 @
+ I& S1 F L2 Q& s) f0 F* A! I) Z} |
|