|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% y* L7 R: J `) D9 }
. s7 h2 v! ]' {" Z1 K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" L" H9 f( _8 X% Q5 P' y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! e" ^2 b9 s* `; z6 K; `- Bswarm.SignatureNotFoundException0 q; {7 \" D$ e. y
at swarm.Selector.<init>(Selector.java:76)1 p! z D: C% v8 j2 M+ y8 v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! B" U+ h$ S. h at ActionGroupDemo.main(ActionGroupDemo.java:67)" I' O. o" J2 ~8 Q6 @8 L: C
% w. l( w5 T; Q! h9 G; ^3 K
, p! Y1 u6 _9 t% C5 [8 @import swarm.objectbase.SwarmImpl; e/ X0 y8 Y+ v3 _4 D
import swarm.objectbase.Swarm;1 {- u6 i# M. @4 ?
import swarm.activity.ScheduleImpl;
- e/ v! U; S+ z/ {( y: E; ]" jimport swarm.activity.Activity;! z# n% ~# U- U2 R" n& V( `3 C
import swarm.activity.ActionGroupImpl;$ D" v+ A" d, W5 T( M
import swarm.collections.ListImpl;' H$ `2 q& D0 _
import swarm.defobj.Zone; _' w r r" q2 L
import swarm.Globals;- v' e h0 w- n1 N
import swarm.Selector;
9 V5 ~& M \' [4 o* n7 B5 U* l$ Oimport swarm.activity.ActionGroup;
9 Z- |/ a1 Y) ^6 U3 @class Agent {
* s x# [0 c9 a# N char id;
7 E) d4 Q( G( M/ d5 J: m: m8 A
2 f) C9 V/ M( B7 s Agent(char id) {
+ k. h1 \, t' `& x% a( \' Y( j this.id = id;
+ E7 C; y6 i) u9 R }7 Z2 D$ @6 z5 V S* e2 g2 Q, L
4 H8 F' a! a0 y8 R5 X
public void agentStep() {
4 S, d/ Q3 {) J- ^# |0 g4 q; G" k System.out.println(id + ":" + Globals.env.getCurrentTime());
' N- S8 x# U% M& R# A1 _ }
1 t- J4 t* ]- l% o+ }4 r7 {, e}* Y! ~' v8 m4 ?3 ^* D/ d* t
. H6 x) v4 z9 Y* i" {
public class ActionGroupDemo extends SwarmImpl {
+ h$ R) j3 H" k' _, W2 g7 k ScheduleImpl schedule;
' h/ F5 }" P1 Q4 k p( a' T ActionGroupImpl actionGroup;
/ d6 }# N; R* K+ M ListImpl list;$ a( }, Q9 Q) \
char Id = 'a';
. ?2 c+ G' y; R- F0 N
. O& U' y- Z1 @- H ActionGroupDemo(Zone aZone) {+ v# @: Z( N! F' f, P
super(aZone);
: \2 N9 \# @# N6 k9 z& T list = new ListImpl(aZone);$ C; n) e" z7 \* f% U: |# L, ?
swarmSetp();1 {0 y/ F- d' `2 _+ J1 i
actionGroup = new ActionGroupImpl(aZone);
1 k# @9 Z8 `; r8 R7 I schedule = new ScheduleImpl(aZone);& l1 o ~# M* y$ U8 b F0 g
try {; v# _: b, L. q0 q* p7 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 f$ u8 J$ l4 q$ _: {
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
\$ A, h- v! B: j4 J, s
7 V% K( F- Q$ I0 ]* P! q8 ^2 `( @ actionGroup.createActionForEach$message(list, agentSel);
3 B/ x3 ?3 P; L" W' L0 \0 X* @1 i actionGroup.createActionTo$message(this, swarmSel);
* ?5 @/ o) }; h# D( M4 x schedule.at$createAction(0, actionGroup);, p1 z) v- S+ H9 |
schedule.at$createAction(1, actionGroup);$ K& t/ y8 O+ c' j, a, G5 I3 ~
schedule.at$createAction(2, actionGroup);
# V0 j! {1 x" c+ L6 T% G3 h4 r6 P3 U" i: J2 _7 ?+ |. M
} catch (Exception e) {
/ O2 @2 O0 U" j8 [ ~ e.printStackTrace(System.err);
4 s6 ?& m+ |: a: A# K, G: {+ C //System.out.println(e);
2 E' Q: G# r4 N9 n! c8 X System.exit(1);% `5 h( Y& M+ P3 d. O
}8 h8 U, |3 E% N' t& u* u' y- r
6 ]% f/ l e" I; U% [
" p5 m6 K2 H6 T6 m. w$ y* a) Y }
: e0 W8 N# \8 l% Q0 o' W [
7 o9 h7 m, y l7 K8 p: i: Y private void swarmSetp() {
+ d, |; m2 g) E' r* u3 F list.addLast(new Agent(Id));& b/ ]: x- X L- s7 I4 \) _
Id++;" E' P: {+ o) b
}3 c Y' i+ L9 p1 Q9 @1 v
6 d: v( \' v: J' Y/ V/ w; O public Activity activateIn(Swarm context) {
% |& B4 Y4 H3 [8 H! |& S% g super.activateIn(context);. J4 {3 p0 y, P+ c% X9 y
schedule.activateIn(this);
- k9 f# E) g ^. h% E E! V return getActivity();
0 g* {0 E; i `4 f( S C }
# B+ d3 a! h: H' k4 _
6 x; \7 p6 J g) V4 e public static void main(String[] args) {
$ h6 |+ M# l3 b1 {$ D6 n8 r Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ S5 P+ h) k! @% `8 p5 l2 I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- Z( ?% L+ Q' B5 I/ @0 E3 [& i& \ swarms.buildObjects();# l0 O1 z; Z2 U; i+ O
swarms.buildActions();
# e8 J7 a( d- n swarms.activateIn(null).run();
& g- A1 d0 F/ C( o, L }" J( n4 d; j( |, c; k- w
8 |3 r6 d* \; N) Q# [4 T6 m' L" O} |
|