|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 z0 L) Y5 w' x2 j" D
6 P& C/ o1 R% p# B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 u. l4 R- e& C) c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." C9 W/ O; _* P; F0 i& n; @ B3 I
swarm.SignatureNotFoundException
# W7 K4 p) Y. ~ \( t at swarm.Selector.<init>(Selector.java:76). s8 ^, j" @# q! J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) D5 ^- q* j* N- y/ G
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( Z1 t5 E9 b0 z+ C9 N; t! ?9 j7 H
& B; r+ ?# e% K2 j0 W2 L4 Z
import swarm.objectbase.SwarmImpl;8 \( U" g2 r) F& Z6 D
import swarm.objectbase.Swarm;2 T& e- T( e* v; e: z7 D
import swarm.activity.ScheduleImpl;1 w: R: T) [" l( }7 D$ ]
import swarm.activity.Activity;
& N2 D9 e1 i0 d/ jimport swarm.activity.ActionGroupImpl;
% C! B. i6 S7 k" `# Eimport swarm.collections.ListImpl;
! L* Q" ~" ^) L' H" _3 j+ }0 _import swarm.defobj.Zone; $ O" |3 E4 }3 e5 |+ B
import swarm.Globals;" O' _9 U5 p6 l3 x" `- X& n
import swarm.Selector;
) g1 w) w" {, k0 Fimport swarm.activity.ActionGroup; 4 P5 X) a. H" P: x; h, Z" Q
class Agent {% n, [4 Y" k- Z" {; h* ~1 Z7 s
char id;3 v( p6 L; r1 X
4 d& y4 m( m4 M4 s3 h; {- G# L; G
Agent(char id) {2 E8 I0 O+ m4 ^0 M
this.id = id;
4 x# \ i+ a/ L% L& o# x }, A0 D5 v) v+ @+ \7 M
5 [6 w9 i2 \" h8 V- c public void agentStep() {1 g7 {5 Y3 i) v9 \4 k
System.out.println(id + ":" + Globals.env.getCurrentTime());
, {. ]* W! R7 B) A9 o$ ] }3 ?3 U; U! [% o1 M
}" b3 n: j9 w7 y! R& ~1 m1 l& r/ z
8 T0 V. l8 Y" G( O' k9 Npublic class ActionGroupDemo extends SwarmImpl {# M3 f0 I# l. |, X
ScheduleImpl schedule;5 h3 s4 w$ d3 j. h- @9 B B
ActionGroupImpl actionGroup;
! j5 F8 Y/ i' C Y& u+ x ListImpl list;
% J% k+ v& v, t- H; ?) Y% n' `" n char Id = 'a';& ~* L; ]9 y' w: Z$ e/ q7 o' c2 E
" R$ V8 D! q, O M. E. w: z ActionGroupDemo(Zone aZone) {
) J. Z& J( |# s5 \ super(aZone);4 [' V2 k, ^* w% c* {
list = new ListImpl(aZone);6 N/ ?( `; H+ G% C- o9 H
swarmSetp();
, }: D6 m: y& ~8 n P/ C; ` actionGroup = new ActionGroupImpl(aZone); y1 D8 r4 C( \
schedule = new ScheduleImpl(aZone);
8 Y1 v/ b& C( C' ^3 s try {& q- d. O+ }: ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 C0 G! t0 @& z7 O6 V) A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. c! h2 Q& x- M8 L; \
2 ]1 F) h( ]: E7 A0 |- R' [5 j
actionGroup.createActionForEach$message(list, agentSel);
! F, i# k. H$ x+ ~5 a8 x1 p actionGroup.createActionTo$message(this, swarmSel);
7 [! @, \5 q; H9 z7 T schedule.at$createAction(0, actionGroup);
( N$ F2 y/ N1 ?4 E/ j3 I& X" m schedule.at$createAction(1, actionGroup);
' F9 s* c$ l* ^, y7 I* L. ]- h schedule.at$createAction(2, actionGroup);
" m& ?' |0 p; R$ Z7 c3 J. n1 C h
} catch (Exception e) {+ |. w. J4 T* a1 \
e.printStackTrace(System.err);
4 c6 }+ V, Z; _1 g9 \. |) O9 _) C //System.out.println(e);* I( b" z* {) q$ q* i" F
System.exit(1);3 j& Z: V ^1 [8 k
}* V9 \/ L4 Q6 n, x5 `- @
% J* E. Q/ Y u, c: N; P1 s ?7 o* M* }
9 {9 j- n; w) I/ M
}( {( P: G$ _% ~1 V* X# ]
/ l. d; n+ Y* y( b/ G
private void swarmSetp() {
' z2 ^4 w/ n. I \/ {" e/ o a4 y list.addLast(new Agent(Id));
! J! h0 v6 a- f: s& Z Id++;0 z* c6 _ i6 D/ d' i
}
; x: H) C+ c, ]# P4 S" O
2 x1 V( R* r4 }: z5 f7 K m public Activity activateIn(Swarm context) {
1 `2 R0 O& A9 t" v! B super.activateIn(context);
2 Y0 T: z3 r1 B9 `4 h schedule.activateIn(this);
1 }, t5 _3 t. @: k) u9 M return getActivity();8 o U5 K3 i7 m
}
; N. s/ O: i$ r6 c* n
6 B) g7 h& S1 b public static void main(String[] args) {/ |) X3 q7 v+ M6 o. x3 d/ v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# G; V( p2 J0 r/ u: B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( c8 {4 b+ n& f swarms.buildObjects();. |7 W5 } _2 f; j& q
swarms.buildActions();
& j2 M5 p2 c& f( K& N- [8 H% N swarms.activateIn(null).run();; z; V: O3 I% V+ X
}
4 P6 V5 x6 [# m$ |$ ^! f/ Q2 j& }/ H& x( a( O+ Y ^7 S: f
} |
|