|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 ^. m- M2 {( t' O
1 U1 K0 z, j- h/ j6 V6 {( u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& ~) a7 [2 ^& E* Q6 c/ w# s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* N9 ~9 R( y, z+ ]swarm.SignatureNotFoundException
/ V& a/ W" Y$ f* P% ? at swarm.Selector.<init>(Selector.java:76), Q! |5 X: N3 C8 R2 N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 U$ J' }" e& J R
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 X$ \+ ~# n7 L) ]& k7 j( y6 p" C, D- m4 P. _# g/ S
3 G, w9 W9 v9 h) H! v9 F/ b
import swarm.objectbase.SwarmImpl;6 V- }8 G( s5 K7 {; n' Y/ N6 K* n
import swarm.objectbase.Swarm;: j6 V; A1 }7 W* I
import swarm.activity.ScheduleImpl;* N5 ^ p% B9 V; h U
import swarm.activity.Activity;6 j/ V- e, h5 ?% I5 A+ u* s
import swarm.activity.ActionGroupImpl;3 o; t: n( ?0 [0 ?$ x2 q
import swarm.collections.ListImpl;6 N3 ~# j- h+ d5 E
import swarm.defobj.Zone;
" X. L U, z$ ]5 h- n, g vimport swarm.Globals;
) ~, W) x8 v! ]3 I2 l- B, c( nimport swarm.Selector;
* q) C8 L) m5 J' z, E5 j4 C+ J5 y9 Gimport swarm.activity.ActionGroup;
) R5 g: q" b3 O1 J V( cclass Agent {
* X9 F- [/ ]& |! S8 \ s+ C- Y char id;, i8 D/ S- | @" Z: I* h; ]! k
* B y9 Q/ C+ r& \* G Agent(char id) {4 \; @0 e+ ]' M! {* V7 j! L' u
this.id = id;
% m- K ]/ p- S8 H. B, W' C } Y7 P7 ]; v% q; u
k4 D" S$ d9 D8 O: U4 C
public void agentStep() {; E; T7 f7 F, g* S" A! w
System.out.println(id + ":" + Globals.env.getCurrentTime());/ O H, v7 F4 ~( u1 e9 R* M
}
( i4 o5 a0 Z* J& _' }" n/ w7 c. ]( a}. @1 O# ]& W9 z" h
- L- z0 @2 B' r7 gpublic class ActionGroupDemo extends SwarmImpl {
+ W U# ]1 Y0 {/ o3 a, `2 ~ ScheduleImpl schedule;
* k) a' D |) m7 v ActionGroupImpl actionGroup;
0 Y4 D/ k' e7 T; k; d! B- c ListImpl list;) }* s9 a9 H" I, _, y. W: B
char Id = 'a';
3 X* J- x; g6 Q+ m) n
4 y1 \& E$ } m, U$ J0 J; J ActionGroupDemo(Zone aZone) {
. t j, E8 w; ^ super(aZone);
$ E! }$ o6 M# t$ p3 Q: {/ V" a list = new ListImpl(aZone);
4 {# B6 Z+ M, j! A) m2 v7 _( H) d- W swarmSetp();
8 c# `; j# w0 v! P1 @ actionGroup = new ActionGroupImpl(aZone);( e( S# E, O& {/ }
schedule = new ScheduleImpl(aZone);
4 |6 C6 b' X! i3 g& l" e try {: U& }% {, f0 P: M1 p) o
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 h1 S+ G9 m: [- u8 z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 h. p8 ]0 Z& H$ K. A3 ~. r, \
: D1 s& o! W3 h/ L3 F( j actionGroup.createActionForEach$message(list, agentSel);7 h( e% J6 Z3 N" \; S3 A( d k+ u
actionGroup.createActionTo$message(this, swarmSel);
! T8 c; h0 d c5 Y3 U% m schedule.at$createAction(0, actionGroup);2 h- R" Q# u# T4 e( c: b: a0 B
schedule.at$createAction(1, actionGroup);
+ c; ^- R0 Y5 `5 E& Q) h- m. u+ a schedule.at$createAction(2, actionGroup);
$ ?6 W/ u8 \% n4 G9 o" z+ d# H2 U* `- |/ S. t# f9 z
} catch (Exception e) {
; ^; _& H4 H9 W0 O7 R e.printStackTrace(System.err);
4 @3 K) Q* a6 q$ T# n3 V //System.out.println(e);: n8 [1 \' o, \ I8 T9 M
System.exit(1);
9 Y; j \# w! Y2 c }' }- x; i$ x3 Q! L
& v% r- o9 W5 j
3 ^! z& l1 H% q4 E( o' y: w* x
}3 J! S- G% x. o$ {0 r( h2 Z
" M( Y: ~7 Y9 ?" C private void swarmSetp() {1 e, P0 y% @/ B/ S: o% P
list.addLast(new Agent(Id));* Y7 Z: l5 C' Z
Id++;
$ c- D* T0 b9 Z: c; |, s }% m. l H1 x+ ^( Y
0 |- [& T6 R/ U0 U* A) K y
public Activity activateIn(Swarm context) {6 v: h9 f" {! s i* ^2 T
super.activateIn(context);
; C. y. X0 t/ B4 T" ]. f schedule.activateIn(this);
. Y4 k: \; c% U( [% K return getActivity();0 s. i3 q3 N/ \1 N8 j8 O" L$ N
}: l/ S5 c2 s2 i- G( {
! m! ~+ }. e2 W/ V) o! | public static void main(String[] args) { p5 F m* G' W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' g6 Q& W, p* w5 Y/ O7 M$ L# l b/ h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 A: B1 J2 D* A8 S swarms.buildObjects();
4 t. f, |1 _7 U' m, t1 K/ x swarms.buildActions();
1 o5 Q Z1 C! E/ R! [ swarms.activateIn(null).run();% c! G: D5 r y: p
}0 r, p8 p: p$ z* s `6 J
+ I/ s0 q: [( ^0 l5 t* V} |
|