|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 M( v2 i4 W9 w, _! N3 C# ~/ D4 |+ j% Y8 U5 v0 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 q3 t- C! l- A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- ]6 L3 w+ o! f4 G6 h0 }
swarm.SignatureNotFoundException
2 |* O9 i$ Y3 E* \/ _ at swarm.Selector.<init>(Selector.java:76)7 G( d3 y4 _# B* S) ]
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 d4 { A. O) ?/ t8 N9 K at ActionGroupDemo.main(ActionGroupDemo.java:67); t F, }. W8 } ]0 x6 r
; x8 [+ i5 o, D1 V- o2 n( F; _7 H3 A9 U1 R) P, e
import swarm.objectbase.SwarmImpl;
) ?& c) W3 q4 D, U3 m1 [- Kimport swarm.objectbase.Swarm;( `# _; p8 t' z! Y. d, a
import swarm.activity.ScheduleImpl;% _' O$ U4 `( N, \% E( p6 b
import swarm.activity.Activity;
1 C; c" @! p' o, A4 himport swarm.activity.ActionGroupImpl;
" x/ Z# L) h K9 I: \" E! qimport swarm.collections.ListImpl;
% u& ~0 v% p* B$ a5 h! uimport swarm.defobj.Zone;
, A4 Q4 m* w7 N8 ~& u! Yimport swarm.Globals;
* l9 ~5 ]0 E$ z+ H8 D; n1 A% Limport swarm.Selector;
& Q& `) y) T$ y0 P& r3 nimport swarm.activity.ActionGroup; & E# A b$ H& V; {! f
class Agent {" O& E3 ^1 }( R1 U' z
char id;
! K& q3 p! B' Q% W+ J# `# f+ d! T4 _2 r1 B R! C% ~' |, ?$ d8 V
Agent(char id) {
! _2 h; f h' c8 u! |( z this.id = id;
* M( f; y4 l# y- ^3 Z4 q }4 f" E# A$ k8 }
6 k3 u- p8 M+ ?$ A2 |
public void agentStep() {5 B+ u& {( z# V: U( \ y; e) I9 G
System.out.println(id + ":" + Globals.env.getCurrentTime());) I& R" G) a7 Q& [! k
}; {- j: t/ D, M. a, t
}7 B* p* {( ~+ O; R9 ~
- G p) ~8 f& N5 w+ s4 O4 j
public class ActionGroupDemo extends SwarmImpl {
9 v' }, O) J' w# x" Z$ H ScheduleImpl schedule;
- t" P0 L% y! Y- }$ J6 ^. v/ k1 u ActionGroupImpl actionGroup;
$ ]9 q2 f: _* a7 A9 T* a" D ListImpl list;5 R; q. U, w5 D2 o6 V+ B
char Id = 'a';
" m, |/ s) N5 ~# T3 z1 _8 K
! s$ H& X& H! X ActionGroupDemo(Zone aZone) {, O+ M2 G! `& Y, v
super(aZone);. B. u: _. i9 `/ V1 N
list = new ListImpl(aZone);
& P- i: `. U j/ P5 d+ \& B+ l U swarmSetp();: i, o, @8 A* N, {) ?
actionGroup = new ActionGroupImpl(aZone);" Q/ z$ c5 t# P k6 l
schedule = new ScheduleImpl(aZone);
- l% Q! S' C) d1 Q, R0 w try {$ X' M' _3 |1 _
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* s) p9 x7 r) ^* a Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! s: g( j. X5 w; m7 y
# ]/ }; K" Q7 f/ K' @6 ~* l: Q actionGroup.createActionForEach$message(list, agentSel);
7 y# ?7 D3 Z+ i8 w! Y% Z2 l: x actionGroup.createActionTo$message(this, swarmSel);" V! S1 ^8 l8 I/ B, W5 K
schedule.at$createAction(0, actionGroup);5 t E3 _# c& x- h8 a" h
schedule.at$createAction(1, actionGroup);4 u6 H M6 F4 i6 K' [8 J8 _2 p- q
schedule.at$createAction(2, actionGroup);
) S: c8 J2 Z+ l: k
/ N7 B1 _% K2 {9 r2 }& ]8 f } catch (Exception e) {
! ~7 m1 x9 w1 |& `9 R* Q* y1 s e.printStackTrace(System.err);
4 c' ~* q/ q# h6 x( O //System.out.println(e);
# g9 |( D8 R7 p0 i System.exit(1);
* W* n9 i' i1 w, o }- B6 A2 h# j: d8 C; t
( w# r3 m# Z5 o$ V! h8 A1 u' g9 F4 m
( W) U( X8 G, F& c5 z" S9 ]; g }
2 F& s, T+ g' G) {& F7 v
1 P C: H! L4 D; S private void swarmSetp() {2 P. @# B# w8 s: b7 p
list.addLast(new Agent(Id));+ Y5 s0 |1 e3 h- A1 x. q
Id++;
6 ]9 L& E: i2 K8 W! x* A3 l }
6 h4 o7 k6 s8 f9 x
' \6 L7 `0 u( p public Activity activateIn(Swarm context) {2 E% w$ O. d4 s+ E. Q
super.activateIn(context);; ^8 g6 b# _4 c
schedule.activateIn(this);
! D1 d/ N. H+ d5 V/ z+ a return getActivity();
: e v1 R# L+ k. M, [ }
6 M' b* b7 j" Z, u# Y1 s9 ]; V
4 C+ Z/ ]$ A, @ public static void main(String[] args) {
+ t( W U6 h6 k$ ^/ x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' d6 l- d U! Q' y+ E6 [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 H, m' Z* G) j# v2 `# n
swarms.buildObjects();6 ^5 e* s- `; w4 z S( c
swarms.buildActions();
3 X: @; l. K. z swarms.activateIn(null).run();% O5 F3 O' W2 z5 L, Z4 V; s
}
0 |8 d! {4 h; N. L& i
; G+ {. `" t2 v1 b0 ^} |
|