|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) D0 }0 r6 G- r. h& Z% H
! D/ ] C9 L' _4 W( X6 Z: l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 Z9 x4 q9 O L9 F4 X: W4 p. b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 L- D+ P, Z/ z3 x6 ^ ]/ e
swarm.SignatureNotFoundException
[/ C S0 R; T7 _! x6 G at swarm.Selector.<init>(Selector.java:76)0 h# m: K, W3 J" v( q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! n1 a& e+ K! t% O( Z! P at ActionGroupDemo.main(ActionGroupDemo.java:67)
( O' j4 U! B2 N
# F& x! V$ E% G6 m/ ^- |- {, I" W0 E2 v8 S% {( W
import swarm.objectbase.SwarmImpl;% C$ q$ d$ V, q1 g
import swarm.objectbase.Swarm;
4 g/ Q6 s" ]2 a# G7 _import swarm.activity.ScheduleImpl;3 {! l- L6 \7 I
import swarm.activity.Activity;
/ h* l3 t0 d8 A4 ^import swarm.activity.ActionGroupImpl;
9 G* R9 p9 [5 P2 u" Y# i! eimport swarm.collections.ListImpl;
" x0 P3 G, N1 \. Y4 nimport swarm.defobj.Zone;
; i; Y9 c n% t: L0 simport swarm.Globals;/ d# b5 Q3 n$ A0 N, [9 l0 u
import swarm.Selector;
8 A, x% W1 e: B3 D3 v# |import swarm.activity.ActionGroup; ( _/ I! Y. d. E- s- T
class Agent {- P8 N- A, C& [9 j# `+ P; |* j+ s
char id;
5 r( X# v% X" i; L3 y' d* ?7 h6 d' l% F- ]7 L6 p6 `% ~# h9 F
Agent(char id) {
" m: ^2 t7 m% d$ a this.id = id;
( B8 A2 n/ ~$ E* r( b }7 L! q, ^4 c4 B/ o, u' r8 h. L6 l
7 `- H4 n- ?' a0 I3 I# j' ~
public void agentStep() {; e) B" {( O- o$ }& g3 U1 g8 n; k
System.out.println(id + ":" + Globals.env.getCurrentTime());
' ^" _" [' E* y9 Q1 m, v }* n% [7 K1 d- I9 u- `
}
- Y ]$ z! t+ w4 X z) r2 B7 ?0 J
6 }4 y: w; K* r+ @9 G9 U" P5 R1 N& tpublic class ActionGroupDemo extends SwarmImpl {8 G8 I) I7 q: X" z
ScheduleImpl schedule;* W# K! i: O: z" J
ActionGroupImpl actionGroup; C N% t6 K9 J8 N
ListImpl list;
8 e5 ^/ j! m' R) i% B# R char Id = 'a';
1 y* b* c1 I% S
' C9 D! b4 I+ p' ` ActionGroupDemo(Zone aZone) {
* z/ [, X0 w# x/ |4 n super(aZone);
' r4 [% K3 l3 v+ m, c0 r% _- A list = new ListImpl(aZone);, {8 V7 ~+ }# A: |8 {$ m1 _" S
swarmSetp();
+ y. w" }8 S9 v: y3 Q actionGroup = new ActionGroupImpl(aZone);7 B, j) d# e! C$ ?7 L
schedule = new ScheduleImpl(aZone);9 T* W1 D, F/ I3 @ Y/ k, \
try {
3 }- L3 f' s, {; y3 X9 M h) a Selector agentSel = new Selector(Agent.class, "agentStep", false);
" I/ J0 y. E# J* O3 l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 x0 m' {* W% _9 t
5 q) D% [+ t, i0 D1 C2 Q: ~ actionGroup.createActionForEach$message(list, agentSel);
. s+ @/ `& b6 M2 {. ^ actionGroup.createActionTo$message(this, swarmSel);8 p5 _" Y. _2 w. n: {8 L2 ]. a. F
schedule.at$createAction(0, actionGroup);
5 c0 J. Z" S6 U7 q- B schedule.at$createAction(1, actionGroup);
; q0 R6 J7 w/ ]* w% Z6 j" B schedule.at$createAction(2, actionGroup);- _; v0 f) {; y+ n# N# Z! L
6 j2 e- [: N+ k. g! |( o/ L2 {7 J
} catch (Exception e) {
) t% x7 n2 ]1 K( U8 `+ C7 L e.printStackTrace(System.err);
% c! W+ Y( N! w' j; Z //System.out.println(e);# ^& }" n5 ~, Q9 l
System.exit(1);
7 g" l# a( ^/ } }+ ?7 Y, @& k/ T: ~! J+ h
1 H6 N4 f" w- n( c5 R/ M- s3 c
! z8 w' j6 W5 X, f- H% ` }
7 k" ?) ^! V( p @$ w7 @4 E( W
private void swarmSetp() {
6 l3 R3 B3 n* \/ n1 z4 i- Y list.addLast(new Agent(Id));/ J. {* ? ^" y; N) N; i
Id++;2 U7 r: C- s) c, |/ ~8 I6 v
}3 Q$ H' v7 @8 M
# r% Y+ O7 l7 [+ r( L0 a public Activity activateIn(Swarm context) {
& x6 f3 a7 v' G+ Q v; L super.activateIn(context);
2 i* W! i7 j* u5 u+ A schedule.activateIn(this);' V4 c6 u5 M; H' K- L- P
return getActivity();- t+ P a1 J* F7 f5 c, U
}* _; y, w0 b' e4 B- }3 l
4 v) D% [5 ]: V
public static void main(String[] args) {) L& K% ~* z+ z/ R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 N( ~6 c7 C8 N9 ]. N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; z/ g+ n) p( `: E( f8 F, h/ e
swarms.buildObjects();
' L" L2 D2 W9 r$ N, H1 ` O2 ` swarms.buildActions();% `9 W% m! n0 @2 F9 c1 ^
swarms.activateIn(null).run();
6 m/ k. \, N& \- p }4 w/ X% }) N) a
) Z/ h6 e0 }) P8 q} |
|