|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 S$ b2 W' r0 l) D( f* N9 f
. |, U( \2 `" P7 P5 o C, \) ~* Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 O. s$ o. Q* F/ x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- u; c) T# |0 I H1 e
swarm.SignatureNotFoundException- v+ W0 |( e4 j, N4 R" N6 C0 R( U
at swarm.Selector.<init>(Selector.java:76). |* f: X- S" w# |! o/ l% J. D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. D Q- r: ?) F: ?; n at ActionGroupDemo.main(ActionGroupDemo.java:67)
p! ^* T" O& j! @ j# c, P3 m2 c5 q+ k. D
9 ?- t) ~5 u3 f; W$ l( r- ]) J; O
import swarm.objectbase.SwarmImpl;
( [; q+ g0 ^1 T4 [, g* Aimport swarm.objectbase.Swarm;% v+ ~& c; U0 ]+ S9 o$ \9 n: A
import swarm.activity.ScheduleImpl;$ M" m N; r% R9 \
import swarm.activity.Activity;
5 o( l& \1 P& {4 \3 B3 ~, L4 Oimport swarm.activity.ActionGroupImpl;
5 S" ^2 H6 o" N/ x# g b- B) Limport swarm.collections.ListImpl;* a) ?# f" e- [. C$ n; T
import swarm.defobj.Zone; 1 {1 j9 j! n$ y- `/ H) Q3 @- W' V
import swarm.Globals;
. O. @+ C) ]0 limport swarm.Selector;" u8 S! Y4 A3 L0 B
import swarm.activity.ActionGroup; 8 q$ k# s. f1 h9 f$ j" q3 Y
class Agent {) Z5 ] A" x3 G( e+ _
char id;4 g6 Z+ g. v" `) r7 U) P
: w C$ X) i, H5 d7 s1 u Agent(char id) {
7 @& N/ ~; L6 J5 f2 U' R$ g this.id = id;# \+ ]; c) D, R+ l3 p8 d4 e
}9 Z4 ~ B$ s% q# X) b+ l
% x* q6 A1 `$ Y6 S$ [$ Q
public void agentStep() {4 b5 h; ?) D" y+ M: Z
System.out.println(id + ":" + Globals.env.getCurrentTime());$ a# X- ?' K, `
}
B7 e, d- z/ F/ L ~- V7 m}
# O2 R6 V# q) W" Z2 e3 q
( ]3 l @% n {& q, Qpublic class ActionGroupDemo extends SwarmImpl {% s& ~2 v) E& t- y* P5 Q; K
ScheduleImpl schedule;
3 ~4 g5 k$ M Q5 N4 z ActionGroupImpl actionGroup;
9 S4 S# W6 u1 m9 _7 n( i: F ListImpl list;) X& i1 |) p3 a+ `' v! ]
char Id = 'a';
0 h t* W6 ~0 v3 y9 L7 i. {" F
ActionGroupDemo(Zone aZone) {4 V- |% `, v: J c
super(aZone);
: {3 e. H- Q& E list = new ListImpl(aZone);
; |7 \/ N: o5 } swarmSetp();! t; _# X2 H( ]
actionGroup = new ActionGroupImpl(aZone);; A6 p( E. D/ Q7 k0 \9 |$ ]
schedule = new ScheduleImpl(aZone);: t, F0 S g* K- Z, z; a; o
try {
7 Z4 w1 b9 z- A' s( Q2 y9 L" c Selector agentSel = new Selector(Agent.class, "agentStep", false);
, c% \8 p# Q9 U1 J Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* W& l$ O% y3 P& ^- M, Q
% I( ]" l# ?: M8 W
actionGroup.createActionForEach$message(list, agentSel);" ~ L, h+ t1 ~ k
actionGroup.createActionTo$message(this, swarmSel);
" r- ~2 ~% G% U4 u schedule.at$createAction(0, actionGroup);2 U( G* u' s b( X
schedule.at$createAction(1, actionGroup);
/ n* g9 \, C' ]* f schedule.at$createAction(2, actionGroup);
K \% E' e/ x* k# q- \( F- r8 P+ o8 B$ `
} catch (Exception e) {1 W+ h) H9 [- R& u& Q
e.printStackTrace(System.err);6 l2 j3 H1 V& V7 ~* R, n+ [( @
//System.out.println(e);, N- F' b% E8 R3 l1 `1 L x- w
System.exit(1);
* e! `, I. S/ r' X3 U2 X, x4 [) K" M }
! E2 a/ H- p. r' Q! o* x) T/ N
9 c- Z4 ~& `" J6 a
3 x3 P5 ~/ y* q" C: e& ^ }
% f5 E3 u' f" j) H# M, U l: L$ X3 k: m% i5 ~- x$ | y6 s! k
private void swarmSetp() {
3 f0 ~" @, o8 B( I0 L# l list.addLast(new Agent(Id));- Q2 q k8 T& \* h* h
Id++;( F: k' _! B" r+ ~
}
4 U3 @2 b5 b$ R% T0 v9 v0 t1 f$ I2 s3 b
public Activity activateIn(Swarm context) {1 E. R0 G9 I* c% n* K
super.activateIn(context);% [7 H$ H8 c2 H: {: P: G f: Y9 a
schedule.activateIn(this);5 a: ~. Q; U: ?! P
return getActivity();
( v+ y3 J) S& h& s$ V0 m" h0 | }% C+ k* W6 h$ S2 Y
/ R' M! S" I, ^2 G% F2 l4 y
public static void main(String[] args) {
! ^* `) h& `2 X% m2 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 _' q: q" E H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ K! K4 e w+ W2 \' j swarms.buildObjects();
" N# V2 J/ @: K! J+ |" V swarms.buildActions();
1 u. a! p6 z; h& `- | swarms.activateIn(null).run();
9 C1 M9 I5 a2 E" x4 U }9 |. c8 f2 L$ ^1 T$ H
$ c" K4 B: v* Y2 x$ `0 F3 c; {* s} |
|