|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. }! G4 ?) S2 r1 [; E7 ` q: c6 N! `. Y, w) J1 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 `3 G! E! Z! C& l Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 `% p: g- @# g c# `0 N) ~swarm.SignatureNotFoundException
4 L$ A% P/ f2 f! v at swarm.Selector.<init>(Selector.java:76)
4 M) K u6 P' ?8 G. u( S at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ ` j8 z* ^5 e7 o, _7 U; L
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* A. k4 e0 j f, C/ w( Y) u8 s0 n
K5 d O5 l# `$ I; J
import swarm.objectbase.SwarmImpl;
# [% h, j+ K" o- G, L( M9 gimport swarm.objectbase.Swarm;
: _/ i! A8 b# L9 o& P h) d; K) Pimport swarm.activity.ScheduleImpl;9 @, v6 O: p1 N, ^
import swarm.activity.Activity;3 W3 L c! X$ U# [8 B
import swarm.activity.ActionGroupImpl;
5 |, h& a' u W1 c E: mimport swarm.collections.ListImpl;" o ]" d7 t# ^2 b% t4 z
import swarm.defobj.Zone; 0 e3 w5 S0 ~+ w7 q$ V! J h8 u
import swarm.Globals;
4 \- M( b% D& y* c/ @! x4 ?import swarm.Selector;! [" u+ A1 T7 e+ Z/ Y3 l" f
import swarm.activity.ActionGroup;
: e% {7 y$ B/ P; y/ f# L# D _2 G2 I: Kclass Agent {
2 ^+ ~3 H& o2 K; B, ?1 M& H char id;
+ `& n Y# u8 a; P. Q9 o8 T/ K9 P- d& B3 _0 X c
Agent(char id) {
+ i0 j! x/ e9 @ M1 \ this.id = id;
& x7 |# E8 B% e }' ?( z( |* G! |# T7 X8 G
+ R v# ~; s$ m9 ~
public void agentStep() {
1 G, t6 M/ u2 B System.out.println(id + ":" + Globals.env.getCurrentTime());0 ~6 ^0 V4 [" V; j
}
* ^( I! J3 r/ I$ a5 v2 R}
0 J& M% L, W2 G" C+ b) r @6 C% V9 F! Q8 H
public class ActionGroupDemo extends SwarmImpl {
* P! v8 M9 t+ u. d, E9 j ScheduleImpl schedule;
5 h0 [; [2 M) X. X8 d% L; Q5 [; x ActionGroupImpl actionGroup;
$ l7 z! z/ o1 O( i2 h ListImpl list;
4 L* }4 s1 {7 j/ X0 l/ y2 A char Id = 'a';3 `% u6 F ]6 k R, n
; q$ W% D0 W9 I+ w! K
ActionGroupDemo(Zone aZone) {
: Y' C) r' S, \0 z super(aZone);
* o- }% Z9 O9 M9 A( r list = new ListImpl(aZone);) R; d' [5 w y5 e
swarmSetp();
4 R: X4 a! q7 d4 G6 q/ f actionGroup = new ActionGroupImpl(aZone);
- m, ] f& e- z+ {8 y/ L schedule = new ScheduleImpl(aZone);
& M- e5 l% P% }3 F; U9 i& ? try {
' g n% U6 C0 g: r2 i* R Selector agentSel = new Selector(Agent.class, "agentStep", false);* s8 n- x; t. X2 H8 d0 k" e* S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
u' m' r, c- ]9 P* t6 r+ ~
$ d: Z* o5 T- b7 T actionGroup.createActionForEach$message(list, agentSel);
4 }2 I$ K" I' e7 V0 y$ E3 e actionGroup.createActionTo$message(this, swarmSel);+ S: V3 E$ i( h2 O1 l4 C
schedule.at$createAction(0, actionGroup);
* L) ]( z" w- ~; Q! [) |) @" U$ z schedule.at$createAction(1, actionGroup);
' g( e2 z8 u- z5 S! y$ y schedule.at$createAction(2, actionGroup);& A- b0 K! z3 _( ]% J& O- m6 G
( u# W$ j) U) Z6 R
} catch (Exception e) {
/ R$ @( E1 j- S9 R4 S2 _ e.printStackTrace(System.err);! e3 p, T" x$ ~+ }; q
//System.out.println(e);
0 f" i7 N/ A' |( } System.exit(1);! w, I: P; }6 c+ T8 n2 q- _
}, X y& t, W( b8 J( ]1 H
0 e- P, o1 H4 R3 |- {& W* V+ F
% L2 F0 z: N* f* Q9 n
}( y, }% o; X2 x
1 H$ X. z% k K1 J0 | private void swarmSetp() {8 x) ~+ ^' M" S) U0 D5 L! E6 T
list.addLast(new Agent(Id));4 A; S, d- j! z6 K
Id++;& {! v) Y' E, N5 f0 M1 @
}' x4 |7 w1 p( N) w# p8 \
- P% p# G6 t4 L, Y
public Activity activateIn(Swarm context) {
' i/ m: K" `+ c4 H3 K' V3 T/ ` super.activateIn(context);
7 I* D0 K: R+ W7 ~% _0 j1 ~7 w7 R6 K schedule.activateIn(this);
1 r( _& k5 T' ?) d5 F* p return getActivity();3 i/ i6 `. @* Y1 ^/ F7 a
}' ~( k( X1 c$ Y G6 ^, o! \
! g: X& x, x: \* }0 N public static void main(String[] args) {4 [' h% u. F" P0 N% |- D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- K5 c# X" p* P) Y, L# C8 g
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* S6 E! }0 e k$ V0 P5 p swarms.buildObjects();
0 ?8 k# ^& G7 D) g5 U/ N# R p! y1 n swarms.buildActions();0 f5 l# {7 t: q/ `9 l, e
swarms.activateIn(null).run();$ f: Q. n4 |) n
}( K9 |# s# ^) C( t% F D2 ]
! P2 l, r8 l# Q) H} |
|