|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & b( R8 B- E. S- h5 L# X
& U' e. c% a# o0 c' g9 ^* \( N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ w3 P, W, T: H% o; A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% p3 Y+ w% m4 G, \ {" t! Mswarm.SignatureNotFoundException$ x# _( e& X+ e+ y& }) ~; N9 j
at swarm.Selector.<init>(Selector.java:76)
" o& c% M4 o8 E! w& o8 R+ E3 ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- d% \( n* ~5 D) o7 a0 |2 O* x" f4 P% d
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* C( q7 u1 V+ n. i2 I& t8 d$ E. w$ u6 A. x# z6 a3 D& m u G
5 P; T( Y6 m, k0 ximport swarm.objectbase.SwarmImpl;
8 J' g) v! r, p2 v7 S, O) bimport swarm.objectbase.Swarm;
% X8 C5 m' j5 M% l. L% iimport swarm.activity.ScheduleImpl;
+ M- G% v7 G3 s3 \9 Z5 W) z# Kimport swarm.activity.Activity;
4 z: I" Y# i3 L7 K8 `; }import swarm.activity.ActionGroupImpl;
9 x9 ]- d/ P2 v7 Dimport swarm.collections.ListImpl;( C; ^ p% ?' l! a
import swarm.defobj.Zone;
4 @4 o! H; S: y7 ~2 [import swarm.Globals;8 h2 ]% r% q% o' Q' a2 ~
import swarm.Selector;4 a' u7 `4 s# ~$ h& f$ w
import swarm.activity.ActionGroup; 1 o( P& ?# y8 c9 k4 Z% Q" Y
class Agent {
0 Y# N+ q2 z' L' |* u( c char id;/ n8 o8 g1 ~' ]4 U: o J' ]4 {- n1 j
1 [# H, L, k* B/ h
Agent(char id) {
8 ^: c% W' \( Y& _+ S; k this.id = id;
, x5 u4 w! L0 M" x- Z8 ? }
' G2 I8 U- d) e- A
5 K! k( p. |/ L% w- C9 z9 b% l public void agentStep() {! k: M: W: Z& ^+ n1 W
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 m% z& E! Z5 W, A2 m }
$ H0 i3 k( M. N$ {7 D}* G. Q, x6 h' y$ [: n" y; w/ t6 A
. C' z; B; t3 M( B2 y9 K
public class ActionGroupDemo extends SwarmImpl {* W' Z5 l5 o Y+ E) X0 d# M
ScheduleImpl schedule;
: |. f# Y5 @1 n5 a, @ ActionGroupImpl actionGroup;
% @4 z6 w) S' F0 Y4 [ ListImpl list;
8 l* Y# G2 G1 F* s4 N char Id = 'a';
" K. H* {& R+ v0 W
1 f6 G s7 ~5 [+ P1 ?- q ActionGroupDemo(Zone aZone) {
+ x: \% ^8 ]; `7 a: p! u8 a- G6 C, b super(aZone);7 R: }% i/ h ]! p
list = new ListImpl(aZone);/ ^0 y' C- j: u5 |$ U" a
swarmSetp();
7 a5 G% Y* d# V( U0 O actionGroup = new ActionGroupImpl(aZone);
/ @1 A+ _( O' x schedule = new ScheduleImpl(aZone);
3 x7 g. a; J8 c4 g+ K! I" U# H# p' i+ \( Q try {
- K% K2 y+ m1 C Selector agentSel = new Selector(Agent.class, "agentStep", false);6 ^( L: J. T2 ~; B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. g( q' {2 M: S* X$ s
) `3 ]6 W+ Y% e: n2 d
actionGroup.createActionForEach$message(list, agentSel);
5 l, _$ `3 s' g$ U2 F. L) @ actionGroup.createActionTo$message(this, swarmSel);
7 b1 U* i+ y# e* R) A# {6 J schedule.at$createAction(0, actionGroup);3 ]* z4 ]& S- M* o; I8 U
schedule.at$createAction(1, actionGroup);# y: `/ I( V2 S- @1 \9 x) T! M& a
schedule.at$createAction(2, actionGroup);8 e! h, S: H2 b9 K/ q; j: N0 K0 j
+ X) f% p/ ?3 j# z6 E0 [- { } catch (Exception e) {
8 _2 ^) q; z# @& I' e e.printStackTrace(System.err);' {- S+ [- n% ^0 c9 X6 _* }
//System.out.println(e);
, I; L" n `/ m: C System.exit(1);
9 p4 T4 F' S; X& b }
/ [3 K& E& C& j8 r; g; P/ v+ S/ b* Q3 G, Q! v4 u6 Y5 ~6 a% w# A# Q
' J$ n: F9 H) \* r2 C% x/ r) ` }
; B" T8 p; E7 Z. i
- m# x4 j9 G, W/ o private void swarmSetp() {9 s& _4 n! B' H
list.addLast(new Agent(Id));* y5 e7 i( w: S+ r& M4 |
Id++;
9 i# V6 x. g$ M9 M! G/ o }
3 o1 q, \# u( v% B6 j5 x1 O# P: G2 y1 q6 E9 T8 @
public Activity activateIn(Swarm context) {
; ^0 k+ O- n% C& w super.activateIn(context);
; k T# Y5 k* c9 C schedule.activateIn(this);' \+ }) b$ @7 t( Q- `
return getActivity();
& X' a+ S8 ~6 n }
0 V/ t8 ~0 v- C6 P6 t/ C- S3 _! }3 D2 s. I
public static void main(String[] args) {( p# S0 m0 r+ k0 X' i- j5 ~$ Q# ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ j- _- s. [ }, ?! F; i
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- Q; d. m/ F: N8 d! E. B swarms.buildObjects();+ E6 M9 n p3 r+ ~( M
swarms.buildActions();7 @. F$ `* m9 Q7 x1 U7 d; u8 q
swarms.activateIn(null).run();
+ G6 ?. W1 L8 N" D% A* s }4 u7 H' Z' l8 z m3 O( _
2 F2 Y* k/ ]$ o, b" f2 S8 `0 @( t9 Y- }} |
|