|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 b* s; k, A' ]
( x9 o; t5 b6 {- I; k0 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ k' \+ ~( k7 y1 J/ }2 ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 d4 o& ~; I9 X& M3 T/ ?! ~4 Bswarm.SignatureNotFoundException
0 N1 D. Z, d8 b) m+ q* ?$ q at swarm.Selector.<init>(Selector.java:76)
. t3 z4 O. r: _; |) c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 m/ w! Q8 p+ m2 r ^* r
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 b0 e; v( {7 J( q- a
. ^ W! w+ `0 S8 b4 N! J6 m3 H$ Z) Y# s8 @4 H! E! x6 \
import swarm.objectbase.SwarmImpl;
2 F; \4 W8 j+ k$ E& fimport swarm.objectbase.Swarm;* @$ _0 P0 h# Z6 R) F: I5 r
import swarm.activity.ScheduleImpl;7 c5 {, }+ m+ |/ V8 r0 \
import swarm.activity.Activity;
6 U; k- C* a/ a! K. x8 _import swarm.activity.ActionGroupImpl;, L) E/ ~0 r- O1 I2 b
import swarm.collections.ListImpl;
- e; Z, }! Y! w0 G) ]import swarm.defobj.Zone; 9 b$ S0 r. d- F1 q5 ~
import swarm.Globals;, f+ o, [: m& J5 ~, }" X
import swarm.Selector;
$ i- d9 U" \3 g4 |2 kimport swarm.activity.ActionGroup; 6 Z& R9 P1 v/ U0 z, b+ M/ `
class Agent {3 `# f$ M+ R5 S- v D) ]
char id;4 \& R8 J( R. M1 ]* @* H/ [
1 |- p5 D! `9 F
Agent(char id) {
, t; f) y- M- x2 Q! z this.id = id;
$ N4 B: n! g9 V8 g4 U( [, g }( q1 S7 M- i2 z1 \. x) c
; H; S, e+ Y$ k" j; c: q public void agentStep() {
) S' ^0 ]) X8 T2 t6 @ System.out.println(id + ":" + Globals.env.getCurrentTime());
( |: i5 p8 U) J E7 ^ }0 b' L1 \* g; J# l1 u6 o, m p
}+ |$ s7 u+ J e6 g j( E/ Y5 \
0 v$ i2 @5 [& |# L
public class ActionGroupDemo extends SwarmImpl {4 ]# N- ~* C$ R( @8 `! V/ w) N
ScheduleImpl schedule;
4 w# p! Y( l; Z3 D2 i, |5 ^ ActionGroupImpl actionGroup;8 @) u8 A' q, V u9 C, s! l% W b
ListImpl list;5 D$ q" S! D9 t" t1 L; B4 A
char Id = 'a';
" G8 R! }" B" C$ }! _4 M; D: _- S$ }9 c' L" e1 _
ActionGroupDemo(Zone aZone) {% h+ i( j4 p! s# j! a: e; _
super(aZone);* T' W& `# H8 P7 I8 E/ J
list = new ListImpl(aZone);% g, o2 l: H" F3 j
swarmSetp();
* P" ^8 V5 l4 Y. X' O actionGroup = new ActionGroupImpl(aZone);. L k" R$ l0 H7 N: }" _
schedule = new ScheduleImpl(aZone);: S8 K% B* f7 A# L% ^
try {
. H k8 x2 n' s% M) G Selector agentSel = new Selector(Agent.class, "agentStep", false);1 N+ `5 g3 m% [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 N, c; d+ T9 V& o
0 g4 S1 a5 [9 Q
actionGroup.createActionForEach$message(list, agentSel);
' W! W& X" P0 C& Y actionGroup.createActionTo$message(this, swarmSel);
# f( F4 [; Q* {! X; G$ ?9 L schedule.at$createAction(0, actionGroup);
, L0 r0 a- A5 K/ N6 N" ?! v5 e schedule.at$createAction(1, actionGroup);: j# p6 A1 g. c/ M
schedule.at$createAction(2, actionGroup);
1 x, o" ], W# a0 f# Z( U$ x% T2 P* Y9 ?6 x0 U4 E( `- c7 j
} catch (Exception e) {
! Z$ q: [2 ~" h* L e.printStackTrace(System.err);3 p1 T7 Q4 j m9 }6 k& e9 a
//System.out.println(e);
5 |3 s- x& V, Z- v System.exit(1);
6 L; }3 Z* D6 }' a: j; y, s }
( M! l* W. _ D( u9 R& D
/ P+ N/ c! c; k4 Q9 r: ]9 b
: ]8 A; `0 c# y# _ c; G% o }: W$ q# ^( u! @- x
( W- {! F' p" v, Z4 @7 j
private void swarmSetp() {: w; c! p& X; u: g5 ~1 c3 ^. T' w
list.addLast(new Agent(Id));: e/ X7 k! q! c5 m% L
Id++;
/ r5 a1 w6 P. f* V7 W# Q o9 C }
4 {6 J. N5 V. Z/ d6 `* a2 ?
3 V. ~, d: I$ T7 a7 @/ C public Activity activateIn(Swarm context) {$ N3 H5 C4 ^5 u; v+ l5 Q% D6 F
super.activateIn(context);& H, P2 a9 Y1 [! B
schedule.activateIn(this);
& I( C( k7 w+ r, |# i/ y9 n return getActivity();
; z X& F" V" l" h }
3 a% ~5 G. }( e U( g' r4 j( H9 {/ w0 G6 f- b) H0 \. v
public static void main(String[] args) {1 M. z% }/ u I
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* q- Q3 g& ^; c
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! F+ v, |: |& C. ?6 j, X. z swarms.buildObjects();
5 k% O% \+ R+ A# o4 z swarms.buildActions();7 k# w% X8 e [6 T# V5 D+ Y' y
swarms.activateIn(null).run();
_* q: @5 i7 B% E6 f+ o }
% w4 H5 F7 q& n+ }2 q1 R1 ]! y
H" _/ W% s: D0 E} |
|