|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# E) _( ]& ~/ m+ T0 R
6 V* Z# X3 B6 W9 U- C( N2 Z% r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 C0 q$ M! c/ x. Y K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* p! R) ~/ v E4 i( M
swarm.SignatureNotFoundException+ R3 b0 _& j( j. b8 G
at swarm.Selector.<init>(Selector.java:76)
4 }; R. h6 q1 H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, J( r) D- @% U7 S N1 V at ActionGroupDemo.main(ActionGroupDemo.java:67)& w$ E i" K3 a' @, D& L
$ U! F0 X" s6 F: y
% f$ A& }5 p" h! B! W
import swarm.objectbase.SwarmImpl;: u' ]1 C( f% ?8 e+ B
import swarm.objectbase.Swarm;
" K; R) h. q9 S: c% c: d }6 wimport swarm.activity.ScheduleImpl;- v' f- [7 v- d( t
import swarm.activity.Activity; y5 t2 Z# f! H+ K4 ^
import swarm.activity.ActionGroupImpl;
% c5 R! K9 k/ h) A9 L% @4 yimport swarm.collections.ListImpl;1 k2 L6 d6 {1 p# M# W8 K: l5 w7 O
import swarm.defobj.Zone; 4 ? W' u+ x2 l) S
import swarm.Globals;
, y* a. H3 O$ h4 z, p: A9 jimport swarm.Selector;
3 }. h3 I# J u* l" R @import swarm.activity.ActionGroup; ; W. D6 A( G4 p6 N( j
class Agent {4 K& L- r* s0 K* g1 i( a
char id;
4 y( a- B( F: l( s: f3 n+ G3 w" O+ r( z# c0 ?! T- i |1 L
Agent(char id) {0 W: p9 ^4 U/ Q8 w; G0 I, W
this.id = id;3 q5 ~; {' a' b4 x
}
; r) _8 m7 [8 v r j; z9 j& J% @! n9 z1 ~& r
public void agentStep() {5 `5 \: x( g1 D3 l) q
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ _( z7 |8 x1 w" e1 v7 O }
! E) m/ ?( x, _" C& v5 W}
. I1 g- b. \9 D6 j
/ f* y0 Z. C: F) ~1 W4 M) spublic class ActionGroupDemo extends SwarmImpl {( Y# X3 C4 c1 k8 a+ p/ u
ScheduleImpl schedule;
8 h K6 \. e) y: c ActionGroupImpl actionGroup;1 M* x0 I& M, |( P T# W# z6 C5 A# p
ListImpl list;/ L! v" x' M M, v) {7 ]
char Id = 'a';0 P8 r* N1 }5 s' _# c1 T+ h/ u% E. X+ {
6 p/ z) o ~5 P3 k3 B
ActionGroupDemo(Zone aZone) {
' h C J, k( o! m; _: z# v' O super(aZone);4 v& H" i$ Y/ N
list = new ListImpl(aZone);4 L/ v( q. k2 F& ^. T
swarmSetp();7 N6 {# ~) B3 L- d( G
actionGroup = new ActionGroupImpl(aZone);
7 l% M6 C! v! w( j ^+ F" m schedule = new ScheduleImpl(aZone);5 i7 f; P O' E, _3 I
try {4 `% z2 T! E P6 n4 v0 S! K
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 T$ C- g/ D) e$ w5 u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* h$ W9 b o/ Q- S' ~- o i
6 V* O& N+ F* q& u4 ~; b actionGroup.createActionForEach$message(list, agentSel);
1 A0 v" A8 @: u( e4 G actionGroup.createActionTo$message(this, swarmSel);2 J: I! i, i$ C/ ?# l+ g! p, W
schedule.at$createAction(0, actionGroup);
# O* O' i, A2 G! g schedule.at$createAction(1, actionGroup);7 M4 w V- i3 C* p
schedule.at$createAction(2, actionGroup);
1 t" T5 A! C8 X7 _ r
7 E' l4 y& V0 m } catch (Exception e) {
; `5 u: |& e. v2 W. l% |5 i e.printStackTrace(System.err);
. n# B/ s/ M; {# G8 m) X //System.out.println(e);
, P4 H- L5 B* \% O! z$ n System.exit(1);
% X, o: k+ e6 p# ]. y( m }
& n* l$ g. g1 t4 I* S) x8 A! Z' ~) Y/ K
) i1 X; \1 N) S6 [5 _" n1 o
}! Y" ~' e- G9 M- O
" h. M' C. `' `3 P# n# g private void swarmSetp() {3 }# N: d' H6 X i( r
list.addLast(new Agent(Id));
" x: C4 Q D5 i3 U0 u. F. N; W3 V Id++;
" q$ Q0 M. L" L }, h' n% ^' Y8 u$ [8 ~
* y. ~ c+ M' H/ ^# [; ^0 B$ G6 v- J public Activity activateIn(Swarm context) {: f T( e$ }; `1 r
super.activateIn(context);
- E$ e/ d- o5 K" p: A schedule.activateIn(this);9 D6 s/ i( Y0 ?8 s
return getActivity();$ O3 q) n" @3 W; Z3 R
}
, w7 Q9 L3 l+ ?, y8 N1 ^, m& K! u# J
public static void main(String[] args) {9 `0 P5 ^& V9 [0 Z+ P8 s0 p, i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 S, H q, J2 g" Q3 f4 p1 {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) p1 i8 B. }0 x" u1 a swarms.buildObjects();. p3 o6 f# a. [, f" k4 d
swarms.buildActions();; T" t6 J# ?: |9 ^# `
swarms.activateIn(null).run();
# t7 A8 M3 B( @; c# h }9 u7 U2 K* `( v1 S
5 ~5 K; @" ~3 j! j( W( o
} |
|