|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 Z7 M1 G% ?* `% J
+ j; J4 B4 j* j+ G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ K* ~7 I R" {( }+ k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 V1 g; ^! W4 u' z! s! b
swarm.SignatureNotFoundException9 P. `' j7 d% q& m/ T4 f
at swarm.Selector.<init>(Selector.java:76)" B; G: t! |- P( X5 B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 F2 X$ E. t! o: l4 g at ActionGroupDemo.main(ActionGroupDemo.java:67)
; P6 y4 [, a: [' Q# }6 s" U5 i) D: G! i- ]7 B
$ k. I" I& r4 D3 P- G
import swarm.objectbase.SwarmImpl;2 G3 Y. b% W4 J+ b- U
import swarm.objectbase.Swarm;
* k4 M6 q% a# |1 T8 J" l1 kimport swarm.activity.ScheduleImpl;, t% L7 U6 d& y
import swarm.activity.Activity;
7 I* C% |0 }/ H3 x8 p x$ Nimport swarm.activity.ActionGroupImpl;6 n+ k" l0 _7 l3 w
import swarm.collections.ListImpl;+ Q6 ?+ Q& C' `
import swarm.defobj.Zone; . J: q5 N/ w' w
import swarm.Globals;( Q5 m# z7 D! b4 L. G
import swarm.Selector;
; ?3 x3 }! m E* j4 Aimport swarm.activity.ActionGroup; : P, ~* w4 V2 V% T! }4 D0 k2 W
class Agent {
5 U1 u; t: r& O4 ]4 M3 h1 ^3 w( W char id;
, ]1 ~/ ~, o2 O2 o/ `! B' k5 s4 ]! S n1 p, w- i5 V4 `: Q. c
Agent(char id) {
# X% ]/ S0 v, m. A this.id = id;
. b' ?0 A: j8 s2 D) {$ x }
/ R% K9 f. E' g
. a9 c1 `' F" B) D' e3 ^3 S! @! b public void agentStep() {
! M5 a C2 Y9 ?3 T, [) ]6 d8 H% { System.out.println(id + ":" + Globals.env.getCurrentTime());
, l" T. Q0 Y1 ^ }* r3 ?9 {5 j/ S0 [
}
' j/ P" {! O# _4 m
5 Z3 i' U" Z( d% W7 G* x% qpublic class ActionGroupDemo extends SwarmImpl {0 w( J1 p1 q4 e- |
ScheduleImpl schedule;0 J! m% x: A- S* \
ActionGroupImpl actionGroup;
9 W5 ?# I! p* @0 \, C R# ~8 E ListImpl list;
" e: _* `+ W$ |) x# R char Id = 'a';: i i% z) B$ t2 H" `7 l4 J
4 y# D# W1 V0 {' p6 a9 Z ActionGroupDemo(Zone aZone) {6 q6 }' O7 d/ ?* ]& N( x: T
super(aZone);
4 L( ^! k: [# a' } list = new ListImpl(aZone); U( N& s# w5 u. }0 h. b! X) ]
swarmSetp();1 y7 k. W; j6 ^3 u: i5 W$ {) [
actionGroup = new ActionGroupImpl(aZone);
" B" y2 p' r: F! \) i. w. R1 j schedule = new ScheduleImpl(aZone);* B7 }2 ~7 f7 T# `# l! k1 ~
try {* f( f8 ?; U! Y y% E' J$ Y& z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
' a: d6 B5 E: ?. C8 g2 c! |7 |2 c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' k- y( o' E- v1 O, e* t! J 3 s. E1 H6 }0 I9 p/ g/ w9 A
actionGroup.createActionForEach$message(list, agentSel);
9 [, f, Z! y1 G7 b actionGroup.createActionTo$message(this, swarmSel);, U6 T' x4 `# M1 q9 r& \, [) ]
schedule.at$createAction(0, actionGroup);
$ G7 e2 {1 n" E9 U schedule.at$createAction(1, actionGroup);( s/ a+ B9 z; G
schedule.at$createAction(2, actionGroup);1 ~( s8 i4 H. h2 u+ ^
5 O7 W* o* J; U7 \ } catch (Exception e) {
( J- }/ l- @! i) u* q e.printStackTrace(System.err);
. ^' F8 }0 q7 X3 F7 S; Q5 ^ //System.out.println(e);: {5 h; {# ^. V4 D
System.exit(1);
2 }9 j; H( _% q" S) w) f }4 ?) _+ @- r; T( \, B
+ n- T7 F6 A4 J* T+ |( e) y4 n4 o' f" O; i) P6 D
}+ x- G% \. a1 `9 D8 |7 X+ \; t: F! g
8 `+ J1 S0 M7 _7 ^ U private void swarmSetp() {! H5 K! v4 M! U. d
list.addLast(new Agent(Id));$ M# i- @# D% ]
Id++;1 v6 Y }4 x4 w+ M9 e* \, G
}
3 E9 Z9 B" S9 k# y3 j% f
& [0 @) m' h( X6 ^ public Activity activateIn(Swarm context) {
O# l' }+ A: N7 y# a super.activateIn(context);
1 L7 `4 \* d& {. o6 j6 Q4 W8 S schedule.activateIn(this);
9 y5 \8 ]* L. F* y8 I* m return getActivity();
% o) P1 ^0 ]2 Q! i. e4 S; |5 t }" X+ n2 w) _3 A- N
; T; V" E& w, M, E% i+ Z3 S! L
public static void main(String[] args) {6 u; R5 @% u" b$ \
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; k) n8 F/ y: e
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. W" x9 O- [! {2 d5 R( V; A2 u+ I swarms.buildObjects();2 T& n1 o. B2 E' z
swarms.buildActions();
7 m$ R( A. p9 X. C, u) E+ a3 m swarms.activateIn(null).run();
, q: Q i4 O' J# R! X* N) K }% ^- B7 A% Z2 J# H2 o% l/ X/ y* d
& Z6 X! L4 _1 |; K} |
|