|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % [, W4 U8 v0 b/ G& L2 l
' c& M& k$ A6 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 o2 l' \. q( [2 H: E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 _% g# Y& d. T% ]2 c5 C2 Iswarm.SignatureNotFoundException) N4 j6 I$ v4 E" i1 h4 T7 w
at swarm.Selector.<init>(Selector.java:76)0 d$ J) @- m' f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 F r, F5 ]4 ~$ p% Q) e at ActionGroupDemo.main(ActionGroupDemo.java:67)8 V3 `& {- r, X1 u
/ f, n0 w( H6 M- o& K) z" y1 E0 F* ]* X
" W3 D' }1 f% pimport swarm.objectbase.SwarmImpl;2 s! ?3 U# u. `/ q
import swarm.objectbase.Swarm;, Y$ f" v4 M9 l$ ?
import swarm.activity.ScheduleImpl;
+ j) r6 v8 g- Ximport swarm.activity.Activity;( L' U. }& y9 o4 j1 b( q
import swarm.activity.ActionGroupImpl;
/ x+ K2 W# U1 Vimport swarm.collections.ListImpl;
7 U. y3 R+ l" b6 z6 p" |( y$ Aimport swarm.defobj.Zone; 6 {; Q ]9 c! ]) e' @* _
import swarm.Globals;
: G% O! a0 f. |. ?: uimport swarm.Selector;+ U9 ~9 l1 ~; M; a
import swarm.activity.ActionGroup; 6 s8 R+ l. A) w. T
class Agent {: X* {4 E5 Y! D: W2 q5 V. F9 g; b8 w3 j
char id;
: I: M8 V$ {* p5 W: y" S- W! z) B" [0 A
Agent(char id) {7 d$ w( X- ^4 p- n
this.id = id;
" V; g z$ |8 h2 T$ m5 m, [5 i; C) T }
/ D/ ^; e$ U% o4 G
$ |( N1 c% |, b: p public void agentStep() {/ M2 E6 l- r$ L7 ~% x7 c5 F; j
System.out.println(id + ":" + Globals.env.getCurrentTime());9 R1 N# P# ^0 m8 v' x# g0 h
}
9 ^% G( N/ x+ X1 N* }}
8 G- z2 p4 m" ~. W1 j, f$ R5 w7 p/ c# S; @' G- e6 b- l! K& l+ G
public class ActionGroupDemo extends SwarmImpl {) v O) d. t0 g
ScheduleImpl schedule;* g& K$ Z& C0 c5 [
ActionGroupImpl actionGroup;
4 s$ ? I) h9 h) d5 K! G+ D K ListImpl list;
' _+ q# a/ [2 P char Id = 'a';/ Z! g0 @' N% l2 I: X
# Z) k% }) Z+ z$ z/ f
ActionGroupDemo(Zone aZone) {
, P" r2 n2 C" d% V* F super(aZone);
" L) w' b. t6 B8 a6 C& g list = new ListImpl(aZone);
3 n0 n% G9 U8 S7 w) z" t+ t4 i swarmSetp();
9 a5 l( {- c# Q actionGroup = new ActionGroupImpl(aZone);+ i# s) N: m- K5 N
schedule = new ScheduleImpl(aZone);/ h: L) i) F. U2 {4 k
try {. N( j' y% y" b l Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ T0 O/ t# i6 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* X# x6 L$ L! @9 s " n) k( x5 ^% y- {
actionGroup.createActionForEach$message(list, agentSel);
0 R& T4 O- p, \: y* x actionGroup.createActionTo$message(this, swarmSel);
" Y. z1 b- x# X6 }; i5 O/ F schedule.at$createAction(0, actionGroup);% E' N) d' M2 M1 N$ Y$ J- F$ T
schedule.at$createAction(1, actionGroup);7 Y* ]* b, Y( i. @6 D9 g( C
schedule.at$createAction(2, actionGroup);
+ q5 J% F- {9 {$ {( W5 `, f5 O
, Q# k* v! D: v' _' c8 } } catch (Exception e) {
6 ^) s$ O& D D, a3 D e.printStackTrace(System.err);
% x3 U* i' T. p: h! J //System.out.println(e);
\1 z0 [3 R) Q- W System.exit(1);
# B8 |) |0 k2 ?" _8 \ }: l( K6 I! B1 D7 s' ]
* O. x: O/ Q. a$ C8 j0 }: U1 v# _( E" A; c& e1 [1 f
}
2 P$ p( M* Y U4 B; s" K2 G, y1 }+ a0 Z* S! \: u3 E- G
private void swarmSetp() {
$ g' b' E9 v( V. R+ q/ v' H list.addLast(new Agent(Id));
2 j+ h A# \4 k+ R" T& K/ z Id++;; F" U9 w% A& `3 `9 t
}3 i2 Z0 I+ v+ O
& r' I S9 O/ ^3 n! k* O% W* R
public Activity activateIn(Swarm context) { E/ `5 X% ?8 M
super.activateIn(context);4 z) o& v7 D# J/ q6 @
schedule.activateIn(this);$ q" r0 X* i; ?9 |
return getActivity();
9 A- c) x% @0 r' L) x }
8 }6 I' ?6 Z( y9 J" ?: }: o7 I/ I) {: p; P. s) e. R
public static void main(String[] args) {
9 K3 P5 K4 l" h+ p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 p+ a% ]. ~7 ?0 L- F2 `# H' z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
t/ }, j1 j9 @: N. c5 t swarms.buildObjects();2 U# M: y* c$ |5 ?' O
swarms.buildActions();
c, i6 ?- ]1 j swarms.activateIn(null).run();
V0 G) ? p4 j1 x% g }# M2 m) d! [4 K
1 w: ]/ @3 ^: i8 J} |
|