|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. b0 G5 {; k3 h' U
7 u% d' x' t' R: e# b/ N; A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* w* g: O& ?8 k# g0 h8 C1 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( N2 d+ c& T4 z( R' R9 X$ ^- t
swarm.SignatureNotFoundException
: Z6 Y5 I1 n5 U$ Y# S% l) f2 ?- ] at swarm.Selector.<init>(Selector.java:76)
# s: p! a% |( t) O: b: ? at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 e) w" G+ t3 d1 y3 h at ActionGroupDemo.main(ActionGroupDemo.java:67)2 R# N, L9 }' E0 q5 ^# C
& W' |9 O1 y' H) {9 ^! m) ^
# [) Y# }: o2 ~ J) G
import swarm.objectbase.SwarmImpl;# c3 r0 i, q% }( t
import swarm.objectbase.Swarm;5 p5 N3 L; |( r; R% f* [2 Y
import swarm.activity.ScheduleImpl;
% b. H2 ^ |2 e6 T9 Z; pimport swarm.activity.Activity;
! @' w( b6 e; p: x! U" eimport swarm.activity.ActionGroupImpl;
* X4 f" d' N# W% Mimport swarm.collections.ListImpl;: y, `1 f) t. \& K1 l
import swarm.defobj.Zone;
& E; c4 ~7 s: E8 G" Dimport swarm.Globals;
+ k3 _3 l# D. s3 b7 @ aimport swarm.Selector;% V; \2 O; q2 h. P* l* i/ ^# w
import swarm.activity.ActionGroup;
/ {% _. T+ M" G4 r! W( a- yclass Agent {
/ ^: a' k* {1 C0 w+ w7 i7 o char id;: M$ A( [( O% G$ l# Q: X) }
" J# ], a; Y/ O5 [% W' {
Agent(char id) {* U0 N- Q/ R+ W+ Y
this.id = id;
- E8 P' v4 K( d4 K2 G }6 N9 g5 f4 m3 x, v* G5 f
8 k8 I* i7 @5 }* a public void agentStep() {# j( @. N" ~5 `' R4 ~8 G
System.out.println(id + ":" + Globals.env.getCurrentTime());* G! o5 q; Z" c$ ~
}- N9 ~4 a4 t4 ?) e8 ^
}* w1 @% p% A- w* W3 h& J
" v% g" r: h; ]" T) s6 cpublic class ActionGroupDemo extends SwarmImpl {3 Q. \! X4 t- y7 F h
ScheduleImpl schedule;1 B* G+ c! X' g6 d& ^. }% l
ActionGroupImpl actionGroup;
, w4 ~3 x$ c3 b1 I/ Q ListImpl list;% [% w% k5 ]' ~) @1 M$ V+ G
char Id = 'a';& R! v4 P5 k+ h2 y4 q
$ b0 M# d/ |" w; o) ~; ?+ A6 ?
ActionGroupDemo(Zone aZone) {; T$ @* Q2 a( C! w9 u& J
super(aZone);
. W: i0 G1 s2 ]( Y: v) J% { list = new ListImpl(aZone);5 T0 |# ^) S1 W7 v: }: u; | ?6 m# C# @
swarmSetp();9 i o! _8 E5 u {, }. A
actionGroup = new ActionGroupImpl(aZone);- T# T; X1 A* J; ]" c( b
schedule = new ScheduleImpl(aZone);3 I% _/ N. \9 y& [+ c& Q3 V
try {' c* G4 ^, [; ~& P2 _( ~( V% t9 |
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 x2 Y" o0 n b5 E/ I& g" l; b% T1 \8 ^) E Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ ^/ C; I8 P4 y- K9 U5 a! i
& y0 D$ f/ o; @6 @8 V- k1 C2 M actionGroup.createActionForEach$message(list, agentSel);
3 z% x4 y6 B) J" F+ l9 g actionGroup.createActionTo$message(this, swarmSel);" Q5 n& }, b8 \7 M+ p }8 l
schedule.at$createAction(0, actionGroup);
& B$ z% b7 Z1 w6 y; r schedule.at$createAction(1, actionGroup);
* S2 \+ a$ _) @0 l4 {& g schedule.at$createAction(2, actionGroup);
) A( }3 _- ^0 Z% A" A+ A' B
, [& a9 J- p' ~% Q9 r2 S) ^ } catch (Exception e) {/ [1 z9 R9 ^: g& J4 y- r8 I
e.printStackTrace(System.err);
! |& c* F& x& i i# U //System.out.println(e);
& X8 Q$ u" d' d7 }3 f* n; h! J System.exit(1);
2 T0 J8 P7 S4 } z0 @* @, o }* A0 \5 y' y0 [' y/ p
( J: i* R! g2 `* p" z, m; A$ f
: L* G. P2 Y# Y: R; O9 W T" o* E* c }# R' m- N+ G" u
7 t$ F# Q4 m/ Y- n( Y( g private void swarmSetp() {
! ~; W6 \! n& f$ R7 ~# u9 F/ O list.addLast(new Agent(Id));* e0 ]& b3 a: |- t# z
Id++;) s7 s' M9 s, X6 _$ ?" H1 [7 ^+ L
}* X( [3 n2 _5 X! _( z0 E: h
% q1 H' f3 ~5 p7 Q! F! G/ g" C
public Activity activateIn(Swarm context) {8 D t# L, m0 V2 f& g: Y
super.activateIn(context);
" B' E# x, m" \% f schedule.activateIn(this);
) D- k4 e$ V- S3 p0 x return getActivity();
" h2 v* y9 {1 w }3 ^3 S( H' `/ ^8 [* R! i# q2 E
( H Q `- W0 m2 ?# F. o
public static void main(String[] args) {6 C T$ R; e% a* t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; s% m7 d, l( b( G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ M+ _0 J: G$ s0 R% q swarms.buildObjects();
1 b" g6 j; Z( G% d3 u swarms.buildActions();! d; A5 g9 f5 o' j
swarms.activateIn(null).run();
) f" ^ K+ H5 M, O }8 r3 S* \: j4 X" W/ a1 I& ]; q" v6 r
+ X4 o" F3 ?0 w" L
} |
|