|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( c' ]; f/ A- Q( [: |; s' R. O# G2 A1 s& E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 G' ~2 R' ~% L. P: p/ ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, p! c6 B) H) F0 H5 l0 dswarm.SignatureNotFoundException- V7 K2 N& N" R: w+ k# K
at swarm.Selector.<init>(Selector.java:76)
/ S+ M U! e# r7 h& _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' I9 X) `# Z% L
at ActionGroupDemo.main(ActionGroupDemo.java:67). x, S* h* `$ y/ W5 n0 r
( e6 u" F8 o: Z. S2 @( P. i; O: L' G# t
import swarm.objectbase.SwarmImpl;
6 ]4 s% z. x) ^1 W: u. i- c; bimport swarm.objectbase.Swarm;
' l2 b: a( |+ |1 ^. bimport swarm.activity.ScheduleImpl;
$ I9 `, p; V3 `, ?import swarm.activity.Activity;5 T9 ^5 V+ I+ C# W) b
import swarm.activity.ActionGroupImpl;
6 ^2 Z- O, j2 r& f- |- N0 Qimport swarm.collections.ListImpl;
" H6 \$ Q3 S2 V( a6 Pimport swarm.defobj.Zone; 5 i% O u2 ^1 k* @- M; g( X
import swarm.Globals;
- Y& ~0 u% S; E; M: {4 Kimport swarm.Selector;! X& G: W& G4 e$ [9 J. T+ _
import swarm.activity.ActionGroup;
- L }. P# l- e1 cclass Agent {8 _8 N/ C4 o) o5 u( S% R
char id;
6 A# w; S; N9 O# O
1 X2 f8 r, r5 {! _6 S Agent(char id) {) H7 V6 O$ a9 e1 _* T! ?& Y
this.id = id;! \4 u/ q- C7 M& P+ k3 ?. g. q. ^' P5 d
}7 q" r6 ~' v" ]8 A
$ q% }# Q" {+ u3 `; u public void agentStep() {
+ k4 D A4 H. K0 n$ y7 |" a$ E System.out.println(id + ":" + Globals.env.getCurrentTime());2 U5 t# k9 C1 R" J
}' H3 h; o7 J, u$ Y( t, J) b- a, @
}! H) h; O5 n* i, w4 V
8 T; K3 l4 d0 q k- @. r
public class ActionGroupDemo extends SwarmImpl {' Z5 B+ Y; j1 E3 Y" y/ |; s8 o" a
ScheduleImpl schedule;% r( V' B* M+ s1 A
ActionGroupImpl actionGroup;, x: ^8 p) q8 a; |) o
ListImpl list;
8 N g' t$ t2 z5 [- T A3 _6 N char Id = 'a';
. t: W5 g ]8 f8 d$ l d! ^& z. f
ActionGroupDemo(Zone aZone) {) z+ x# J/ O; f' Y8 d
super(aZone);
) L. X( \$ i. ^# a9 V2 o list = new ListImpl(aZone);& f* N" W$ Y3 @) x
swarmSetp();% O9 ?4 j$ P9 h8 S) c5 K4 U$ K
actionGroup = new ActionGroupImpl(aZone);
( u( J; s! r: h# O7 n" q, \6 \ schedule = new ScheduleImpl(aZone);1 l# P2 W* g1 E3 h% T7 f
try {
4 q, I$ E7 O$ i/ c) e# c Selector agentSel = new Selector(Agent.class, "agentStep", false);
) V+ i% `3 K: w! w$ C Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. m8 M8 N/ q* ]. j4 n
. m( P; U* l# n! S actionGroup.createActionForEach$message(list, agentSel);- h: w. K/ ~& ^# t
actionGroup.createActionTo$message(this, swarmSel);/ W% O& `+ y) j& J9 a) M
schedule.at$createAction(0, actionGroup);: h, Z5 l4 l' A% i$ V4 @
schedule.at$createAction(1, actionGroup);
w2 H0 ~& `4 E' O9 w$ V) z schedule.at$createAction(2, actionGroup);' o1 l2 d3 G G! E2 m) \' _
! w' i6 j& O+ N+ w$ Y0 k% n } catch (Exception e) {; I4 t4 F4 O+ o
e.printStackTrace(System.err);
% Y- \4 V' M$ ] //System.out.println(e);( u: p1 h. y) P# n8 W- I
System.exit(1);
* K) X% M l+ ^( \ }" g6 ~0 R1 J3 l8 `9 I
/ Y' H) ~% I: w0 _ i5 K" s
5 K, L1 X( [/ z N }
, m& h( m4 l6 y* c
$ j; Z6 ^! e! k5 O private void swarmSetp() {" s/ w+ v( I6 J# M
list.addLast(new Agent(Id));+ O! P. X" i3 [$ i
Id++;
5 j/ [9 a8 ~, W8 O! n. [ }
( ^( G% Y/ h( m. D4 W( l) x
/ ^0 D0 Y1 o6 ?% i% l public Activity activateIn(Swarm context) {
; u- ?; ]6 g2 I( i0 ]$ a. h; L6 Z super.activateIn(context);
0 S3 C' A/ R" ~/ q- @# W schedule.activateIn(this);/ r5 T2 _2 s" l: s
return getActivity();! @5 t- H! i$ x7 p# }% V8 ]0 ]
}2 {$ s# J; C. ^3 w9 X% R6 H
4 b( D9 a) W* g& a6 A
public static void main(String[] args) {
9 v6 i0 h4 t. V4 y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- n# C2 M5 L' Q" [4 N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 V% K1 i8 B0 c( Z( j; z% k) D1 }
swarms.buildObjects(); G+ q8 r# y: q0 i
swarms.buildActions();+ h3 u% }: A' O# E0 y* M3 w
swarms.activateIn(null).run();" O" [1 G& [5 H0 c
}5 @( d" T1 U- ^! ^: j* Z, M0 ~
$ d7 j$ u# r+ }0 S; ^1 S5 @
} |
|