|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 W( k& H: f7 a' ^
1 Y* w* o0 z1 E* S% ` p6 Z5 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 T0 _) ~: t0 x5 f+ r' [) s! v; C* m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& j' d7 A/ z" H8 y1 F$ _3 aswarm.SignatureNotFoundException5 U0 d5 m8 {5 r$ J! `/ l% r4 S
at swarm.Selector.<init>(Selector.java:76)
7 G; R8 F$ j+ L( [+ c at ActionGroupDemo.<init>(ActionGroupDemo.java:37); y7 T8 f; s2 y, V6 G F7 }7 A8 P& E
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. G) x" u) ]+ I4 W' J9 C
- o3 x7 `) Q" L( [
- y/ H% Q, V+ U q. ^: ]( r/ Ximport swarm.objectbase.SwarmImpl;
" o t. \" w" R" L* ?7 V/ W6 E& `4 @import swarm.objectbase.Swarm;2 \% E9 ^6 T* h5 Z* V
import swarm.activity.ScheduleImpl;8 R- n; H( |* \( T+ U K! E @+ p
import swarm.activity.Activity;6 F( q$ N& s. W+ C
import swarm.activity.ActionGroupImpl;' c+ _$ B) M- U8 a2 m8 z
import swarm.collections.ListImpl;( n) c9 M& ` v* N$ n! o$ n' x
import swarm.defobj.Zone; ! ~8 x; C8 H r% i- d& b" t6 ]
import swarm.Globals;; n/ x9 g; O/ h4 o+ L
import swarm.Selector;. w# I1 o" u% E* u: J
import swarm.activity.ActionGroup; ( N. e4 \0 X K1 R9 ^
class Agent {# e, s: B4 V' F/ N! Z
char id;
$ J3 [- j+ l+ @& A! u# \2 \
1 C4 I/ X0 N9 J' q Agent(char id) {9 T0 h7 x1 ?! a% }2 ~
this.id = id;
8 C3 ^) Z# m1 W" v1 W w5 o- O6 l }
1 e1 Q |6 X9 K6 O$ p) G/ h# {+ d6 }! L/ n1 k
public void agentStep() {- [* K' n& E5 G/ R
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 g0 y5 ^* ]1 z, _' X/ U) f- _$ x }# @/ W! ^9 t I1 D
}. _# f- a. j; z& S* I2 m0 N! W- i# W& F
; r6 @5 v) k1 q3 w' y' c8 M1 Apublic class ActionGroupDemo extends SwarmImpl {: r3 y; x8 Z& `( z8 i2 P& @
ScheduleImpl schedule;' }4 X4 C6 x8 u" ^& ~& h X
ActionGroupImpl actionGroup;+ i& P& O; [8 F* F3 ]* ?6 \7 b: S
ListImpl list;
1 V* _$ D; Y& B- c, m1 s char Id = 'a';
' k& h8 X( e* E9 x. r% O7 s2 }
9 I! J' g% ?6 Q ActionGroupDemo(Zone aZone) {( a# _! S5 _# j$ D8 T
super(aZone);9 q! J" a$ N% @) v
list = new ListImpl(aZone);, C8 a0 [/ l: [ o) V
swarmSetp();
+ V6 W0 e( q$ i. ~1 a$ ] p: e actionGroup = new ActionGroupImpl(aZone);
2 J* O I" o; [- M$ V2 j schedule = new ScheduleImpl(aZone);
# R( G" l* `$ b9 w try {
5 d; `7 H* C. v8 }& P2 S Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 d# {6 R' z. ?4 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! c, H1 m2 ?2 u9 E* j
- q( t; ?5 I) ^( q9 c5 z/ L
actionGroup.createActionForEach$message(list, agentSel);5 \( V e" C2 c1 q
actionGroup.createActionTo$message(this, swarmSel);
" V* Q# H) f; f, H8 K% b) d2 q schedule.at$createAction(0, actionGroup);
0 \& I+ I; j/ y& \ schedule.at$createAction(1, actionGroup);! n4 ?, v6 ]* M8 T
schedule.at$createAction(2, actionGroup);
/ ?# Z( F, w4 n
' P9 s' h s6 t1 ]/ O } catch (Exception e) {
& E- x6 F) u. F' A) Y7 I& a e.printStackTrace(System.err);9 l1 y/ A6 _% n: P! q5 d
//System.out.println(e);
. D! J3 r. N( @$ Q2 H% O System.exit(1);" o( [' F: _: @6 h e0 W
}
0 c- x2 C# x( G. T( {" f& F; L% R. w% p/ t
2 F V! r, u6 @: g. o4 g- W) r
}+ Z6 N& J2 M( X( h' ~
0 F, ]; J% w+ N+ _; y
private void swarmSetp() {5 c2 d' }2 i8 i- _/ |4 n) a
list.addLast(new Agent(Id));
. k" y' Y0 i% t4 s, ~$ H; a5 \ Id++;$ F% q4 m8 S6 ~# V+ j! P
}
- T: c1 a; W+ o) k- S
' D$ n. K/ }+ I; e, ~ public Activity activateIn(Swarm context) {0 Z/ o1 N8 i# D
super.activateIn(context);
5 |: Q" L% Z& k: r schedule.activateIn(this);
6 A, p' K* M5 I; c3 M( i# Y: m& u. m return getActivity();
& B v/ E( u8 \* @ }. p3 _! [+ E: ^6 p3 @4 \$ P; c# f3 s+ |
% F7 W7 w0 i& F5 Z/ w( E) P public static void main(String[] args) {
/ V [4 {8 f1 u; d! c+ i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 w0 G/ x5 D& S) a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. S: n2 T( r" w. }9 c1 l1 w swarms.buildObjects();
* {- W& K4 j6 X swarms.buildActions();) N) P5 |3 W' M1 N+ w q7 ?
swarms.activateIn(null).run();
6 ~( f6 p. T& u0 }; d G/ | }
! r+ b# T4 i! ^
7 K. ]5 a1 g& d! D# {" Y7 p) }} |
|