|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 o8 K. ~- e' }0 L* D* I
7 r8 K: }9 R. n" s8 j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, y) f. m# `& s! C' z1 j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 ^, U8 i* T1 S/ r8 [( W
swarm.SignatureNotFoundException
) O. o/ y& o1 @+ N# z2 g% u at swarm.Selector.<init>(Selector.java:76)) V5 F" L4 V1 z6 ^. B9 S. _" l8 P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), |) b$ f& O1 {
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 e0 i/ ?% c: C7 J/ j
8 F* g- B5 s) `2 _% R8 V
1 D1 C6 f) Z+ @/ G/ S9 h8 Rimport swarm.objectbase.SwarmImpl;6 Z S+ ~2 C c& E. C
import swarm.objectbase.Swarm; ~- n( ?% ^9 i0 W. F R
import swarm.activity.ScheduleImpl;
$ h" m( C# T3 B s2 eimport swarm.activity.Activity;; b( d, A& r U$ _; R1 C4 \) V4 ]5 J
import swarm.activity.ActionGroupImpl;
: x6 U {% T5 i8 {) M* m! Rimport swarm.collections.ListImpl;4 i3 K7 R7 G" s( C' R
import swarm.defobj.Zone; 8 J, Z @% X1 z; u4 _2 r- @- Q- w
import swarm.Globals;4 O& L S# i& T) B' Q
import swarm.Selector;( S" Z, ^! `% k6 ^1 L0 c
import swarm.activity.ActionGroup; " w d7 R% N2 i, E3 _/ m) n
class Agent {. R2 I9 P3 @% A' q; K
char id;
/ x0 s9 Z! C# H" f! P# _: D/ N
& C1 ^- U3 L2 r. l% n& | Agent(char id) {/ k! E1 v- t& K$ E
this.id = id;
! `7 P6 F' B" H6 v }/ O# y, l% Y- T. s8 t
0 ~0 F. e5 i* P1 \8 M/ y
public void agentStep() {; d! _* d2 p; ~
System.out.println(id + ":" + Globals.env.getCurrentTime());. i( l- i5 X& h! ?8 U4 k/ m( }& L- Q3 o
}
) l6 ^ U! B3 K- V9 Q, v S}
, x. j+ { Z2 I! J/ ~# d' i! M1 ?2 ?) Z! I
public class ActionGroupDemo extends SwarmImpl {, m$ U/ l' i7 L/ g
ScheduleImpl schedule;
- y: {2 F8 c1 _/ t ActionGroupImpl actionGroup;
# P* L. e0 J4 B) X" ]' o ListImpl list;
8 m+ p5 S2 h4 f& m7 K/ ?! N6 o char Id = 'a';
) o) `1 [) O, O8 }* @. ]% L) [
4 g3 I" D) X$ b/ m: U5 t ActionGroupDemo(Zone aZone) {
' L3 `- X, C3 b& [% P& z super(aZone);& y- X1 V0 ?% S+ f4 D" y" ~9 u( y
list = new ListImpl(aZone);, z. S% S2 p: m
swarmSetp();, m9 I4 X7 y. o$ s+ ]
actionGroup = new ActionGroupImpl(aZone);
% U( W* i2 K! t0 a. @ schedule = new ScheduleImpl(aZone);
! F, o3 D% O, |8 ?& C try {
0 q, C+ [. l' ~8 \% h Selector agentSel = new Selector(Agent.class, "agentStep", false);7 A* ~: L+ n) T. }! i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% z! ?+ t# W+ h/ r0 _, B' O/ n
7 ^, d" `/ z" j4 r: G' U
actionGroup.createActionForEach$message(list, agentSel);3 v2 E6 K! L- A: o: r
actionGroup.createActionTo$message(this, swarmSel);
9 y' S6 d- g7 t schedule.at$createAction(0, actionGroup);* ]' U: _* ~/ a6 p N! h
schedule.at$createAction(1, actionGroup);
' Z0 K6 x) K+ n* g- y: J" w schedule.at$createAction(2, actionGroup);2 a( }' h: {* e6 h2 }- t5 H
: i9 g: X% X$ y# Q8 t } catch (Exception e) {4 E0 n0 h* ]6 d8 y
e.printStackTrace(System.err);
1 u$ q( g: ?) W //System.out.println(e);) f# f' Z( A; @; p8 `
System.exit(1);+ W# ]9 I8 o* y8 L) C
}5 l" o& O- H1 f% ]) B" K; G) e
) ]9 X0 c4 {; n0 ~1 L
+ n% q* n) T! |' F }
$ M% l) _ ?9 A+ `# }# {. O V' E1 o' f/ k) u0 @5 a3 p1 `
private void swarmSetp() {
5 ~! G8 [* u: _ list.addLast(new Agent(Id));3 I" `/ Q, c! o' R# C7 ~
Id++;
4 F5 z$ w- E- a. h }$ n; L: i H' Y1 w% o! W8 M; p+ I
/ }0 [+ Q. F5 X% p h% v( p. R
public Activity activateIn(Swarm context) {1 L6 R( }: m: ~' S( B4 y" D6 x
super.activateIn(context);7 |; x8 N" v* \
schedule.activateIn(this);
; p5 E# j- \1 o& N8 P W: h9 q return getActivity();
0 \% e& c$ y8 \3 o" ` } k, E% l, d$ e B) n6 K
1 @& b- M& ]1 y' @ public static void main(String[] args) {4 v$ H& `9 [! J, G
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" t4 ?: o! F. p+ k5 O q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ V' o* ~+ @" q swarms.buildObjects();7 K" X+ e2 k! P: R
swarms.buildActions();5 t# l5 s% n: I/ ^& n
swarms.activateIn(null).run();, Z3 v8 a3 R f" s3 \, x: t/ ?! c
}" H9 r6 X% s1 \4 f
! d3 ] ]' |/ j C3 `8 L& S
} |
|