|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # f% A0 h3 x2 {7 c/ G
9 A4 |, n* J. k$ P7 y0 n0 `6 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: B. d: d/ w2 i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 I# O) b k G, {% q
swarm.SignatureNotFoundException
( v& I \+ u% i# ^% G6 C at swarm.Selector.<init>(Selector.java:76)
; j3 R* d( i/ O2 y. Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 B O+ |; H, u$ U0 W
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: t* s: V3 `" z2 B
! p k" D' X; q- M% N9 B, s5 l, Z: \% N' K3 U9 b1 D# P5 M; n, T
import swarm.objectbase.SwarmImpl;
F4 S0 j% J& U0 Qimport swarm.objectbase.Swarm;
$ u4 S2 N) R) G' x* x& }import swarm.activity.ScheduleImpl;
( [& y: k; Z) B$ t+ L9 [import swarm.activity.Activity;4 k5 w1 D( z; A1 ^0 G+ d" K4 A* O
import swarm.activity.ActionGroupImpl;. L6 Y. z/ U. S; `/ H' m% V3 b
import swarm.collections.ListImpl;, i7 x7 m8 H6 {; _! M1 b1 D0 K
import swarm.defobj.Zone; 7 ^( a, F6 w' J$ t
import swarm.Globals;4 f5 B+ K) z$ s8 n" `( l
import swarm.Selector;$ g7 C, j* Z# w# n
import swarm.activity.ActionGroup; 1 M% i( w2 ]$ `' {
class Agent {* D8 t: n& B) k; e! f, ~7 p e
char id;
4 y3 j9 l* L5 `) m
6 h3 x4 |. b8 N* |/ H Agent(char id) {5 g# x! X2 x* q6 h
this.id = id;6 N6 q* r4 {: g! |) g* D
}6 o3 ]" g, W+ K6 K7 ^; H% I [
5 c- s0 m$ K7 i& m; ?
public void agentStep() {+ ]) r0 L/ J* I/ c
System.out.println(id + ":" + Globals.env.getCurrentTime());
. i: W* W( E! a }
, x5 n6 @) k9 r [& X, a- V}
" @1 h2 t- a8 J$ A( u8 w" ~2 S d% d
public class ActionGroupDemo extends SwarmImpl {
. I* Q6 e' x# E; @" A" d+ ? ScheduleImpl schedule;4 V8 z1 C1 J% W1 B8 u) X' e
ActionGroupImpl actionGroup;
9 E) p& V; g& W3 R% z3 u3 S ListImpl list;
5 W: Y0 o- Y1 A; |/ u1 J+ K char Id = 'a';# l. o' ]: x; ?9 r( Q
! [, O! o. D# t5 a) F
ActionGroupDemo(Zone aZone) {* ~1 _/ u# y+ n5 D7 |8 G b! w! ^
super(aZone);
& @8 h) u" S" w- w4 q1 T; w3 E! ] list = new ListImpl(aZone);1 L! l# s; l7 b; K5 ~+ m! X' ?3 W
swarmSetp();
. l* t3 n8 T& A, M* k- [ actionGroup = new ActionGroupImpl(aZone);+ Y. k9 S! T: g: e T1 Z
schedule = new ScheduleImpl(aZone);1 x' ^. R7 x+ _4 v' e9 Q0 U, Q
try {
) ^' g. R# C' X \+ \% E( ~8 L { Selector agentSel = new Selector(Agent.class, "agentStep", false);
! C, V* F8 f1 P0 K Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) _! L6 p' t) |7 s
- [ U4 v5 E- e B/ D3 a actionGroup.createActionForEach$message(list, agentSel);
+ h8 D! w) B. }3 u1 D l$ V actionGroup.createActionTo$message(this, swarmSel);0 v. M& z. k: S7 l0 p( K0 v% t( }' B
schedule.at$createAction(0, actionGroup);
" a* {/ C- h* h# T3 Z& ] schedule.at$createAction(1, actionGroup);
+ g: m' F# D% d schedule.at$createAction(2, actionGroup);
- ?3 h# M) d0 \2 Q, x, Z. X5 t% C. @( @4 V1 g
} catch (Exception e) {
& @5 I" }5 E( V6 F) N5 E e.printStackTrace(System.err);
& A! K7 u0 y" V8 J, m$ E4 G2 x //System.out.println(e);
/ K$ W9 |& ~. y System.exit(1);
9 u8 L5 l" _! } }
! l# e9 X. B. j& w, ?% r; R1 ], E0 c, I9 L- E% @# ?& F
5 K/ A; |% L1 f z2 w5 P" D- y }! R" F7 I$ _$ k' ?5 D- s
% O2 Q; m3 A7 B a& B! v private void swarmSetp() {* K# x- ]3 ] c( U. d
list.addLast(new Agent(Id));. l( m. H9 Z% D0 g
Id++;* k0 A, g0 x% F8 Z5 Y5 ^" V/ Q
}
- ]6 m# J) \! M2 A( H* ?0 \. f, O$ _
' p! w8 O% s# a8 c public Activity activateIn(Swarm context) {8 N, O n4 A; U9 S
super.activateIn(context);
& g" b# ~5 T2 x0 N9 D schedule.activateIn(this);
" C7 W/ q6 D# S H8 o, T9 _ return getActivity();) @4 D+ j6 l0 D) e- L
}
% D: E/ [& H" ?2 \% S, M1 U8 _2 n0 o: F% k/ H
public static void main(String[] args) {' c& ]# q0 v! i" Q4 b& c' ]6 I
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) f& w7 M9 G- d* r* d( d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 V9 c- B8 h5 N. [
swarms.buildObjects();& }3 B1 P2 e6 }% X
swarms.buildActions();
i. V) ~, e1 i. p% @ swarms.activateIn(null).run();; h; V" q: ^$ `9 z# E/ H a8 z3 A
}8 k2 d6 y6 _9 m, }0 t' ~* f
9 s- z, W9 h/ ~- \/ m} |
|