|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' E+ m$ n* D3 h c+ v7 D' N+ Y- V7 j; J5 m F2 @0 M3 N! P; ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 o0 P! p, w; }4 M% ^% W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% }9 j5 Z% o7 s' eswarm.SignatureNotFoundException
6 j D9 n' B% q V2 w at swarm.Selector.<init>(Selector.java:76)) A. k( M3 I% Z7 C1 C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 ]& a& o# g+ U# B0 Q0 z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* {+ K c- k& V( p) E9 t$ W9 J0 O0 u6 z: |7 r2 m% K' b, S% U
0 c/ J3 x( i7 o2 Z3 Z. ^import swarm.objectbase.SwarmImpl;) [, D$ ]0 Q* w% R
import swarm.objectbase.Swarm;
" d s' R q6 Y, Rimport swarm.activity.ScheduleImpl;2 }9 _' m8 |' r+ X ]9 g
import swarm.activity.Activity;5 g$ t4 e9 T9 \- M9 Z3 M
import swarm.activity.ActionGroupImpl;
! v# z2 B; B3 A3 z8 O; i0 Zimport swarm.collections.ListImpl;
0 e, j) {# h0 n& K a# `$ ?import swarm.defobj.Zone;
( }6 c- H3 ]4 ?$ |. dimport swarm.Globals;
8 K9 t! q1 m6 qimport swarm.Selector;
5 ] o( _$ P( z4 r% Gimport swarm.activity.ActionGroup; 9 v; I: _! H0 L
class Agent {7 a6 N* t9 s' L+ D
char id;5 g2 ?- }1 V& }5 \% B+ n" I
7 M6 C/ W2 m; \: F" r Agent(char id) {" U! W d1 h6 X6 T
this.id = id;2 T6 @8 i6 K) M3 J7 U; k
}6 w# L7 F8 N6 t# z1 x6 g U! b% N
/ z4 c* ?9 e6 G. l) K+ e' q& ]
public void agentStep() {
$ f/ o, @9 }) K) N+ y System.out.println(id + ":" + Globals.env.getCurrentTime());1 M2 k6 a) s2 i7 e
}
9 h+ T" d9 u0 E- @9 E1 ~" c. r}, v6 J8 s+ G+ {, a& x
, W" H* t9 a3 g; t. hpublic class ActionGroupDemo extends SwarmImpl {; y" ~; x6 s8 B
ScheduleImpl schedule;
2 `" |9 P% ]$ _6 O" h3 B2 ]( m: r ActionGroupImpl actionGroup;
. z e4 o- h4 j/ n8 u ListImpl list;
5 ~) W0 h6 ^# a& I# r& f char Id = 'a';
& }" |# O! Y3 S1 b* j- f" m( M5 z" T* c5 o& J6 Z: P. z- @/ F# \5 L$ X+ M8 p
ActionGroupDemo(Zone aZone) {
+ b# O5 J) j2 ?8 u+ b8 E super(aZone);, [8 L& J1 m- |- Z0 u/ r8 D
list = new ListImpl(aZone);
, K; Y/ v! ^' m# u% |% r swarmSetp();( m8 U. q- ~+ A8 ~# E) z
actionGroup = new ActionGroupImpl(aZone);
9 p- a% l; c, W" @& T schedule = new ScheduleImpl(aZone);1 b, x- z1 B3 U
try {
! x3 k A4 Y, m# F Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 H: c; d& o5 Q5 {' n Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 D. y* l+ N+ t' h- N# N' j
8 a/ E. I8 c" K& s actionGroup.createActionForEach$message(list, agentSel);" w, a5 F( `* i$ D& v
actionGroup.createActionTo$message(this, swarmSel);
+ |, v/ A; f0 P; C$ D% { w schedule.at$createAction(0, actionGroup);
4 e, w) u! i3 C& z* V schedule.at$createAction(1, actionGroup);
" A5 J% M3 t \0 y5 n* F schedule.at$createAction(2, actionGroup);3 i) q) l* @' U5 c
/ f& Q1 p. Y' _+ ]. ?6 G& ~
} catch (Exception e) {1 U# v& ^0 w! T3 F
e.printStackTrace(System.err);# D. x, H' {5 j' ~
//System.out.println(e);8 Q3 i/ \4 D7 }8 I$ a
System.exit(1);8 _- ]" t& H+ O! @: m2 m% P7 b
}
! U5 o- {0 n! t" J' j: w) U% M5 U3 s1 U+ u8 D6 V0 I
: j+ t! q4 a. ]/ T) q
}
9 C2 ^5 k! j7 a( b" [6 B v7 k) m* y& U0 O; a' K& H
private void swarmSetp() {
' @* u$ g) X% O3 m5 H# y list.addLast(new Agent(Id));
$ T. [9 e0 a. A' j! T( d o Id++;
) b; w9 z. H: b( S* f }
$ r4 o. g# ^0 A5 u7 B- |' v. ^9 ~
public Activity activateIn(Swarm context) {
2 `: B: h0 G9 t/ t super.activateIn(context);: i1 `+ F- h$ P" i
schedule.activateIn(this);
$ w4 k6 ^+ p* b; X2 T return getActivity();
+ q, |! ^* m1 K* T }
% A; F! d# _5 o1 {4 q
' F8 p( K0 a8 O: U# m2 I public static void main(String[] args) {
^9 c( m9 Y( x+ v9 w. G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 k4 \, K. [) x. ^/ ~' r Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; n# ^$ m5 S- {6 {- \
swarms.buildObjects();5 V$ _( g" m) ?! }; b7 Q8 z
swarms.buildActions();
2 A: [6 C' \, k- E* A7 P, g' } swarms.activateIn(null).run();0 B: \& j' a, _+ ^: g: E2 n
}
$ x2 l! L9 |7 R- S) K1 Y
/ @# B8 r+ L! t} |
|