|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + ~5 m1 o5 _- a! {
; W! g# a) M+ i( x% t, a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 W! {# k7 c0 h- Y9 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# b/ E' ?, x9 [ c" k
swarm.SignatureNotFoundException6 T+ H! N- O) w F- z
at swarm.Selector.<init>(Selector.java:76)6 X& P7 L* s. f/ T6 P7 ~6 G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# K% t( t J0 c* k at ActionGroupDemo.main(ActionGroupDemo.java:67)
' k2 ] Y2 M. Y) G; _% B
% a( a/ X1 \( z0 m9 U' J
3 v. n. m- o* P t3 H8 L/ {import swarm.objectbase.SwarmImpl;
" H6 F0 k' j _5 aimport swarm.objectbase.Swarm;
. K# P+ p4 f, _6 G# W7 I- aimport swarm.activity.ScheduleImpl;
: f- p% J5 d6 E- G* v- c( jimport swarm.activity.Activity;
* N/ U9 W) n! W, Z$ mimport swarm.activity.ActionGroupImpl;
6 [% b Y R; w+ u u6 _import swarm.collections.ListImpl;4 }; b" e [: [6 |7 j
import swarm.defobj.Zone;
+ A8 E# B7 U A' v; ^import swarm.Globals;0 Q) S2 r. R7 n/ ?! u" A
import swarm.Selector;) h3 [. @! ]' o
import swarm.activity.ActionGroup; , I4 H& \4 x4 ^; M
class Agent {: r8 w+ a+ s, Y4 t
char id;
; H g9 [; D, w* r
4 D, E2 z: G5 F Agent(char id) {* b( U0 L' e7 E* r1 s; J
this.id = id;. T+ v2 M) O7 @
}) m0 N8 f( w. r% |$ Z) Y
+ q& A1 Z9 @- ~- U5 G
public void agentStep() {( Q+ R% n. [$ B( B+ q: J
System.out.println(id + ":" + Globals.env.getCurrentTime());
# }7 w! g, }( R x! Z, ?/ C }
8 }' q; v% E/ v$ a}
: a# v+ s* ^/ M0 x9 w3 \" r s+ v+ u* g' Z
public class ActionGroupDemo extends SwarmImpl {8 J$ C4 v$ G+ ?; B- }
ScheduleImpl schedule;
" A0 Y" Q( v# e) S ActionGroupImpl actionGroup;$ s8 l# i6 h& S! j9 g
ListImpl list;
' H7 k( Z! W6 W' I0 l: w0 i char Id = 'a';# J- Q1 N- j2 M6 H' h; {9 c
' m1 ]4 Z5 N- {4 j: q
ActionGroupDemo(Zone aZone) {
* L, V" _ n# t. p super(aZone);
! r% W5 ~4 w, d$ Y7 _7 [) e list = new ListImpl(aZone);5 i, G) o1 j/ a. J3 c& |/ _1 b
swarmSetp();! V4 H' r( I- i3 K$ t" j- b
actionGroup = new ActionGroupImpl(aZone);2 F2 O3 a- v% D) I
schedule = new ScheduleImpl(aZone);
/ i" f! z; k8 e; g try {* _+ f- j2 ]6 ^% o: i
Selector agentSel = new Selector(Agent.class, "agentStep", false);0 S% D8 w7 _7 U6 y% g0 R0 f8 P' [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# Q3 l: C9 l, S- G
8 S% h4 I# _! L J3 u. d actionGroup.createActionForEach$message(list, agentSel);) N9 w( b7 r0 S( A% _
actionGroup.createActionTo$message(this, swarmSel); w( h0 O. ~8 @/ h
schedule.at$createAction(0, actionGroup);( `/ e8 i* I b1 s
schedule.at$createAction(1, actionGroup);& \# }, u8 [" W2 J1 @# P5 ^7 M; j, J- O
schedule.at$createAction(2, actionGroup);
4 d! A- E6 p0 A; L9 Y
( |; |$ Q+ r. ?: I3 g1 H P) S } catch (Exception e) {
+ T$ N0 g+ s5 E5 [) D e.printStackTrace(System.err);
" \) o7 g8 W1 _* E; Z //System.out.println(e);
9 W& M9 S# J/ v) {. t System.exit(1);* J% u% d/ a- o T3 s: h
}9 M2 }! p4 J1 S* D- h
+ h* k9 e h, p. n T; x5 z2 T
& R5 B1 i6 e( c# S6 L1 }" I
}
. \, w0 E' J. _9 t" _& V7 Z% b/ o& q1 e0 \8 x- f" F5 ^- S$ i- I, a# L
private void swarmSetp() {
1 R5 f# h5 M/ L" A) Z list.addLast(new Agent(Id));1 N% W: Z; ^7 e
Id++;! f2 I2 A6 q9 X2 k( [
}2 y# `9 e9 Z4 u7 n1 Q
2 c, N3 P5 k9 N2 E public Activity activateIn(Swarm context) {
) J- h; A1 d* q2 i super.activateIn(context);7 j6 r( k3 J5 E5 y/ s
schedule.activateIn(this);
5 a% w7 `$ {9 j: D8 e return getActivity();8 q& ~2 i. r% s! e$ Q
}$ p% V& h' Z5 q7 |' V
M+ X6 b* {% J" d1 T
public static void main(String[] args) {' {, b1 u, [* C8 u. D6 O
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! |& n! Q: A, z8 J0 _) Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 [) e# L; ^2 Y5 b
swarms.buildObjects();
; D0 ~5 e8 n4 y) S swarms.buildActions();
! b6 C( B |5 \) f swarms.activateIn(null).run();$ e7 g& q! x- i) h( d+ a
} S6 `* R. q9 @8 D; ~/ M
: A: {* u; Z- j: k* l U2 E4 x} |
|