|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* c" @* ]( @9 S/ \: e
) j# N T1 j% j5 x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& `' m1 R" Z) p' g$ I4 H) C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ r+ z1 R6 t. N3 \+ k3 A. k
swarm.SignatureNotFoundException# F- U G2 k- h
at swarm.Selector.<init>(Selector.java:76)& ^0 ?4 ]% w! U2 E2 E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 w2 ]( _$ N) ~ at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 @, I2 t: d8 O' I0 ~% N' X
1 x. G6 _! B6 C6 @* k' Q: y8 Y
0 e% E4 O3 e; [% G9 vimport swarm.objectbase.SwarmImpl;9 m% d1 v5 @% R, }- ^, X
import swarm.objectbase.Swarm;
/ K; m1 g0 V* K8 g3 {/ `& x9 ?import swarm.activity.ScheduleImpl;
' Y8 b: }" F: q4 a3 l, pimport swarm.activity.Activity;2 a( {: b W8 m- ~% Z6 p
import swarm.activity.ActionGroupImpl;$ z5 H- V. C+ M$ U" Q
import swarm.collections.ListImpl;$ R: M: o/ ?, q0 J0 u
import swarm.defobj.Zone; # q$ s* q( m" i/ e+ R g6 V
import swarm.Globals;4 ^) {; ?7 o$ a$ f7 J
import swarm.Selector;
% X: y1 V! ?% P, |. K: ]5 qimport swarm.activity.ActionGroup; & k$ @: m: n! W; J; [5 X
class Agent {
: ?5 X; f3 q2 u% `1 J! w7 s7 L char id;- J8 d v" O4 Q% o3 ]+ ~) B+ Z3 d
6 ~, Z6 }- x( ~2 t A3 d Agent(char id) {
- Y2 u9 K# e. F: r$ X( P( Y this.id = id;
, E3 K' V" ^7 d/ M2 ~# i }
, P5 l! I9 D8 L: X5 u+ ?% R4 S4 m5 u; T+ {$ A& b
public void agentStep() {1 f8 N2 w1 W. h7 K" \
System.out.println(id + ":" + Globals.env.getCurrentTime());1 `: v. H( ]- r" I0 H/ \3 I
}
1 i4 M- O3 J/ J9 h) g$ n+ k}5 O2 X+ r9 s/ h' C# b: D# l
! U* G# f$ }: D; K0 m5 v! ?5 P
public class ActionGroupDemo extends SwarmImpl {1 g, }. e% ]# A" E& v9 F$ h2 j
ScheduleImpl schedule;, F' s, x" v# s
ActionGroupImpl actionGroup;8 t: J/ G% [( ^' q) \& [
ListImpl list;% E% `( I+ W" n3 D9 M7 ]; g
char Id = 'a';# }) `3 Y: {+ D
& k6 B7 X9 W, [, f. Z) E/ `* e- e- Q2 m
ActionGroupDemo(Zone aZone) {0 m, |1 V" L) m$ G" g+ i
super(aZone);. F1 }1 m& ]8 F' h" J Q6 `
list = new ListImpl(aZone); h3 ^8 U/ |" v' E2 k3 C3 m4 s
swarmSetp();8 Q: |8 N" D% E* }! \! `* g- R7 A
actionGroup = new ActionGroupImpl(aZone);: G v0 k! ]4 c; `3 u+ R" H, M
schedule = new ScheduleImpl(aZone);
2 _+ Q# |2 i, `4 {1 R9 \/ V try {1 n, G1 Z8 U( K
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* B, p1 E( R3 J* i- f7 K Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 f' O$ f+ o c' I5 C
. ]/ r) R- W1 p3 U
actionGroup.createActionForEach$message(list, agentSel);6 N9 I0 I& T9 U+ @! O( q) ?
actionGroup.createActionTo$message(this, swarmSel);0 U2 R! B- H: y
schedule.at$createAction(0, actionGroup);
. S5 @1 }/ X! @$ f% j6 n. M schedule.at$createAction(1, actionGroup); Q, o$ _3 a# U$ n6 |+ s
schedule.at$createAction(2, actionGroup);# z4 ^/ k8 z. V* h* d
0 H- i' C7 c& S9 M
} catch (Exception e) {) i7 h5 H! [0 j! @6 {3 s" I
e.printStackTrace(System.err);
( j7 U* p9 A% U- n/ T5 K% T //System.out.println(e);) O; F5 ^" i$ K, j! I
System.exit(1);5 T* `$ I) x1 W, N
}" U5 ~( j. D! T
' E+ ^" I; d. q( L8 a' _7 T9 O1 x/ i9 ?' U
* T. e. ~% q; P
}% g5 A7 _( t- |0 B
- W M3 ~( W+ X8 z: p5 K ^ private void swarmSetp() {
) j1 f8 P. ~' F3 R# G list.addLast(new Agent(Id));
. Q) B) e& `/ r8 m5 v: f, Y7 @1 ` Id++;
6 r4 y0 p. d6 \( y3 V5 I }
9 k/ k( F& W! B# t" L3 k: g
4 s# ]* X/ `1 c9 H0 ? public Activity activateIn(Swarm context) {0 L& o5 c8 k* V3 _4 {
super.activateIn(context);6 s/ s/ a7 l' S, o% o9 \5 t
schedule.activateIn(this);
" b+ b m. a7 z: s return getActivity();. K3 S; r* N4 H8 r
}5 K$ d5 q/ V+ b \, e" v* h
" Z8 L+ E# z/ `% E& c1 R$ L& z+ r
public static void main(String[] args) {
F# n0 q+ A F Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 m- H: O R* K6 \ F$ x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ A' Y- T, i; u4 O% }( S4 B. D: t
swarms.buildObjects();
+ x1 z2 N9 Q1 g% f- ~8 K* C swarms.buildActions();
0 O5 s7 w$ f' I* I) d3 Z swarms.activateIn(null).run();
. z4 H- N% U3 j }' G6 p! x3 q, _$ `. ^
" z' x$ Y6 P/ m) A} |
|