|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' R9 ~2 n3 b2 K. F+ z% z2 N7 O! W, l0 O; a7 t3 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 ` x4 } ?8 V8 d. I* R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ R& n& D6 z, n' N/ H
swarm.SignatureNotFoundException
" n# a3 R" j0 ~1 N: X/ | at swarm.Selector.<init>(Selector.java:76)0 O$ s5 ~" x0 G9 b( E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 J7 s! j3 w4 ?$ h" e at ActionGroupDemo.main(ActionGroupDemo.java:67)! G0 z6 Q2 L3 X
; H. R8 t, h3 K" Q
7 c5 y9 [/ A j q0 i9 C! B3 Aimport swarm.objectbase.SwarmImpl;. [, L% |4 b. \0 P. A. P+ ]
import swarm.objectbase.Swarm;2 S; x! S" H0 z/ A: f
import swarm.activity.ScheduleImpl; b, a! [/ G' D8 N
import swarm.activity.Activity;# S6 A3 P2 Z. u& j& k, h+ H
import swarm.activity.ActionGroupImpl;
* S3 X. b3 q; n8 \( L( oimport swarm.collections.ListImpl;
1 t3 ]: b4 {" J8 L& M) R Rimport swarm.defobj.Zone;
+ b: v/ h/ V, s/ h& k. U) Vimport swarm.Globals;
! N; ~# q. ?; A$ Gimport swarm.Selector;* X% X3 \% i4 J- a- [( ]
import swarm.activity.ActionGroup;
7 E# a$ ]! g S, u+ }) G/ Sclass Agent {
; W$ z3 }5 m8 | char id;
- y3 Q* T$ W, i$ M2 Y* q: L) o b2 e; k, h
Agent(char id) {9 L) S; u1 I2 B: G" D+ A
this.id = id;+ h) D/ r) |9 s9 c
}# v$ \7 E# X/ Z, ~: ?2 n% _* g0 s' u
/ a0 y3 M. T" i6 n public void agentStep() {
, x8 O8 j/ x7 F7 t( k System.out.println(id + ":" + Globals.env.getCurrentTime());( m: W, S4 N: ~9 o+ Q7 x' S
}6 `/ O) I, v5 [- Z
}
0 Z# F! |, v! D6 [0 c' H3 g) `8 ^1 }
public class ActionGroupDemo extends SwarmImpl {5 O8 V: ?7 i8 o0 S) w' T, I( t" m
ScheduleImpl schedule;
$ K9 M% C [- G ActionGroupImpl actionGroup;4 m. A; k; Q* }) m0 H) H
ListImpl list;
: u* u: n4 R, e8 R char Id = 'a';
- ^7 }4 A% |; X S. H! H9 U" @
7 ]( E+ R: ^/ I; K) j9 P ActionGroupDemo(Zone aZone) {
& i4 w2 {) w5 B super(aZone);; o- M- S; {% p1 b+ o8 j0 u; R
list = new ListImpl(aZone);
$ d, |+ i& R, q6 m; @ D7 T swarmSetp();$ c, [: {3 V1 f- x4 f, D
actionGroup = new ActionGroupImpl(aZone);' m* d& D+ \+ {% e7 _0 E8 h4 o$ Z- Z
schedule = new ScheduleImpl(aZone);
8 v, f: e& M6 ~4 H try {, o+ s7 q6 K) H/ E3 P4 `
Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ N8 ^1 }3 \/ f. h Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ [, ]2 B% B0 _% Q7 V 2 t% @$ R x# _4 f( ]
actionGroup.createActionForEach$message(list, agentSel);
4 ]; L' T, }; i actionGroup.createActionTo$message(this, swarmSel);7 n2 f) c/ z# x7 E
schedule.at$createAction(0, actionGroup);
+ k5 c4 p$ z1 |* g$ Q schedule.at$createAction(1, actionGroup);
" v/ ]; H) |! {2 T& z4 d! {: F schedule.at$createAction(2, actionGroup);
( F: t) V3 M2 E0 U" q, L* s/ _
) S: S9 X8 G/ T) G3 A( _7 z } catch (Exception e) {) j9 G: o% W( h0 s- m2 U
e.printStackTrace(System.err);+ n6 P# U7 t L m
//System.out.println(e);2 a& v2 h' X$ V5 L
System.exit(1);
; V. Y- b C9 _# }& T0 l* j }0 s: D; j6 G( F! e% p( C& k
' T) @/ u( I% @ j7 I9 X& z$ r
. ~/ W7 K$ H h4 K+ C* N4 z1 |6 o }2 S" M& w i7 d) y' I& J* K2 ]7 {
+ r, ~4 o* m5 p1 h9 Z private void swarmSetp() {5 @9 \3 N, k( f7 `$ s
list.addLast(new Agent(Id));
- B5 x) x( y0 ?( ?- v& f Id++;. D0 x& [; b9 T8 p+ A g( b
}
- N4 r, `/ G+ i
; k" L: [9 Y5 c public Activity activateIn(Swarm context) {
g) q @; }- ?4 o* u5 g super.activateIn(context);! o: u5 s- c: z5 K5 v6 C P
schedule.activateIn(this);
% d* S$ I0 }& e; V* O5 S- _ return getActivity();
3 g0 t$ W: g R: R$ F }# c$ B' i0 D% P3 W
$ V: L$ Q- x G% x8 s public static void main(String[] args) {" `! M2 x9 u& W5 o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. B* \) h( `3 H% v$ Y9 z8 |- G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* B- _! @# X: H' l& q swarms.buildObjects();
( V9 U& [. w! i) S swarms.buildActions();
+ E, t/ p( Y9 z swarms.activateIn(null).run();- S" L& N) V7 t# L0 E+ U
}. |3 m4 Z# ~2 q0 u
% c: B; P7 ~ _8 o9 z} |
|