|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: s, k7 G0 y. r! A
: C6 x9 b# k: ]$ \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, p9 A8 |% q2 j' `9 P& H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 B; C1 p" h4 g/ S, v
swarm.SignatureNotFoundException' o; g7 w$ a2 e* T
at swarm.Selector.<init>(Selector.java:76), h- u) U/ ^) z# e: o/ W
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ _, x& f) D; x) t8 x2 q1 I: X at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 p( z; M4 i U& ]* `9 {, R# t* ]3 Z# M2 ^1 M- q/ x) y; w4 s F- a' s
2 Z6 @8 `+ z# W s2 Z5 Bimport swarm.objectbase.SwarmImpl;
2 D; h* c9 |# }import swarm.objectbase.Swarm;; J3 V7 U/ j6 i3 |
import swarm.activity.ScheduleImpl;
4 N! B! E. U8 W' Zimport swarm.activity.Activity;. H9 h$ v1 f8 R
import swarm.activity.ActionGroupImpl;! l% _7 e" G' H* m) ?6 D. V
import swarm.collections.ListImpl;* U& T* h% o: o' p( n8 h
import swarm.defobj.Zone;
$ |$ W6 d, o0 z/ _import swarm.Globals;
+ i! B' r D3 H' P9 uimport swarm.Selector;
) `! g# X/ T/ {9 I1 V t5 }import swarm.activity.ActionGroup;
! B6 H7 w7 ?5 a) W+ j- }2 U' b nclass Agent {1 E+ q0 ~# J1 z" N: u
char id; Y: A0 ~3 r" V# i
" h% ]( p8 d' t: M2 y, _ Agent(char id) {
# |8 Z- M7 F a7 t this.id = id;
6 N: M0 h. y2 o& v3 F7 z2 x$ J+ e } ^: R2 ?9 o L8 D4 n& Q! C2 k
q* @8 K a8 N- n8 E& u public void agentStep() {& h% z3 a; T8 m! \* a O4 h% \
System.out.println(id + ":" + Globals.env.getCurrentTime());
* b* i- z* O0 N }
2 P* `) u6 Z+ c/ W- |% h}8 a1 a5 [. G9 [2 Z5 @" c y
0 |1 k! `( m) \public class ActionGroupDemo extends SwarmImpl {9 F6 i0 s7 _" x& T2 v% U6 D- d' C
ScheduleImpl schedule;! ]( K4 K0 Z9 ^+ S* L1 j5 i
ActionGroupImpl actionGroup;! i L$ i$ x+ ?; B; O
ListImpl list;
# y# p+ _' i; H char Id = 'a';" C; t, n* {4 Z
& N$ o) `+ T$ l1 Z4 ~
ActionGroupDemo(Zone aZone) {- P/ v. j$ Q; b/ ` Z% h! V
super(aZone);
?$ @/ o& z- [- B list = new ListImpl(aZone);& n9 ?& J4 Y4 h$ Y; G+ u6 Z
swarmSetp();
' p. M- m; V% [$ \+ m actionGroup = new ActionGroupImpl(aZone);
4 H8 n1 S1 x1 ]. d, D2 B schedule = new ScheduleImpl(aZone);% Z1 [; i4 R; @ @
try {
9 ]" ]" {& O% K' Q Selector agentSel = new Selector(Agent.class, "agentStep", false);' c+ j$ I' }: e. w" O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( ]; i: A" d; r" Y2 ?) j5 y
/ R6 ~. E2 W! u7 F actionGroup.createActionForEach$message(list, agentSel);
! L/ L1 w1 m; d* i2 E( W actionGroup.createActionTo$message(this, swarmSel);( \' K H7 z9 t% b1 \1 M
schedule.at$createAction(0, actionGroup);) J& k0 W) r; \, P }
schedule.at$createAction(1, actionGroup);
0 e! p, w! g9 k9 }+ h* v$ z schedule.at$createAction(2, actionGroup);
p. [, t6 Y ]% T. g2 S" V% c9 g; N
& Z: E+ f8 o3 N8 d7 f4 n } catch (Exception e) {7 T5 g9 b# [( h0 j8 c3 V" \3 y) J
e.printStackTrace(System.err);
$ F3 s; ~4 }" h7 E8 P; P //System.out.println(e);
9 Y' o$ F% P8 P; c$ a8 I System.exit(1);
7 ~; e( ]! S# L0 Z1 M }8 C% y$ E( R [9 d0 i6 r
8 u( F* W$ ~" T& U. q
5 Z5 M% z% w l/ \$ z
}
: d2 T2 A N- _+ k1 m1 u& S9 J$ K) P# |8 E3 ]$ B5 q' C% K; ]- U/ H* B
private void swarmSetp() {- j/ O' z1 s0 R( l. H1 U4 [
list.addLast(new Agent(Id));* \2 e. p3 P* s
Id++;8 ~) y2 f! |0 p. V
}: z% b: b* g+ r
* i; Z$ s3 [/ K5 g
public Activity activateIn(Swarm context) {9 x0 `# H4 D& c+ C5 R# [& z1 L, g2 i- a3 Y
super.activateIn(context);
1 ^( u3 v( L: g; Z( s" V7 c& I% h schedule.activateIn(this);
5 J5 d$ v+ o, K return getActivity();6 o5 A3 O, d2 u& K5 p
}
: s" u0 _; v/ r& d6 ?% I
" L, u& b$ ]7 x+ @; f& m public static void main(String[] args) {
3 u2 \6 B+ ` U+ K- }- i8 E) W6 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 o2 E; y, N# R# q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 c' N, C( Z) i$ i+ J swarms.buildObjects();
% s, ~% T ? M8 n" l; ` swarms.buildActions();+ E- O5 M) J0 ]- U* ^- Q! ]
swarms.activateIn(null).run();) u: B! [& w% I* p: o3 }, t3 H
}
# X" A% B" \% i; o
# F6 q+ \' y4 Z6 c4 o} |
|