|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ g" c% K z7 f1 ~3 c
, i! y6 h2 C3 M* a5 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 E5 y3 D" L) d, J+ v# _& k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ n4 u1 X0 R2 L0 b
swarm.SignatureNotFoundException
- \5 h8 ?$ t" S6 u1 n at swarm.Selector.<init>(Selector.java:76)
: {; f, F5 u3 @9 N6 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 p& u& ~' P. v+ [ at ActionGroupDemo.main(ActionGroupDemo.java:67)2 Y1 L, _! M; ]* E
5 U( r- j/ w" _) W4 X+ ?
. B; W' g8 w' n/ f8 Pimport swarm.objectbase.SwarmImpl;
3 Q5 s. u4 e* P1 p7 simport swarm.objectbase.Swarm; _. q8 i' j8 u+ r0 U2 Y$ M
import swarm.activity.ScheduleImpl;9 G# O5 J7 L9 M% e
import swarm.activity.Activity;
/ R2 Y3 _) ~% ^import swarm.activity.ActionGroupImpl;: I# Y% `. Z1 m# I, t
import swarm.collections.ListImpl;# j4 x% w9 {0 f7 W0 N0 a5 E3 o3 j/ i
import swarm.defobj.Zone;
( l; Y: H& Z9 ]0 F& Pimport swarm.Globals;! u& d) C! Z6 ^2 h
import swarm.Selector;. o* `1 J) O& K5 M# L
import swarm.activity.ActionGroup;
& c1 \5 m2 B8 U. n7 mclass Agent {
2 D" D# g* T5 e* a char id;) Y7 ]/ ^- I, l7 _7 h6 O2 h: T
, Z# Y& y. H. l U, c
Agent(char id) {% }5 A/ l3 t% k+ W
this.id = id;; V! ~8 h0 N; t. b! Q
}
$ Y) a$ i/ K" o* X. a$ W
; h$ f& r0 s+ G9 {1 N$ A7 a public void agentStep() {
n8 _" ?; o; a: u& V) m! ] System.out.println(id + ":" + Globals.env.getCurrentTime());1 c5 L1 O9 X0 m- k' \ P
}
1 _. ?; q7 z' L( @- g4 ~/ @! m}
6 m' K0 e0 S& K% c8 g6 a. ]
* _- y: f. K) G$ x+ ~" ]public class ActionGroupDemo extends SwarmImpl {2 P- Z X5 j6 A" {2 L2 b
ScheduleImpl schedule;% P* L( k8 }! |+ s3 f. K
ActionGroupImpl actionGroup;
0 Q% D3 q5 Q9 s* s3 g6 Y, \/ [1 e0 K ListImpl list;+ O# ~+ s3 a( m# M0 l0 {4 q: n
char Id = 'a';
4 x) o: ]5 t3 V" E
) O1 L, } b; z0 z ActionGroupDemo(Zone aZone) {
6 x9 e# A, L" ^3 _3 @) h6 k: J super(aZone);5 m2 x% o+ k0 R2 S% w
list = new ListImpl(aZone);
4 V* r8 o$ h- W8 v0 k, A swarmSetp();% Z; Y- a/ i6 c# g4 V' }
actionGroup = new ActionGroupImpl(aZone);
2 N& h! J. x. L; W% k+ R; o/ e schedule = new ScheduleImpl(aZone);
* {( L% r# g& a7 I try {
6 k* h* ~) _! [; [0 W% G Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 ^" w! ?5 B% w" L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; D+ |% }8 ?7 N% T. m; ^+ D( P6 A
8 r( [( Q1 c0 `; e
actionGroup.createActionForEach$message(list, agentSel);) }% T3 b2 M- o/ Y1 N6 y/ k
actionGroup.createActionTo$message(this, swarmSel);$ K- |, q0 r4 e, w7 z
schedule.at$createAction(0, actionGroup);
( b, ^9 C. R6 Y schedule.at$createAction(1, actionGroup);
6 J$ v m5 C8 N c7 S+ X schedule.at$createAction(2, actionGroup);
- w% _0 L5 _: ?; d: D4 n, S
% `3 k' | m1 a/ U } catch (Exception e) {
& U; N; Y: d1 p9 J e.printStackTrace(System.err);
: p* R; i$ |. r3 }' Y) f //System.out.println(e);5 j! N( [/ J8 g9 K4 P3 p+ X
System.exit(1);
( q( ], N3 A& E/ } }
8 _. s) N" j8 N5 t% x# Z- U+ o: n/ T+ j8 Z- U' }
/ N7 |2 T- q1 ^. f }
: C2 [! C7 x+ k! l: T) s
+ Z3 h4 S( d) r; E5 M2 g private void swarmSetp() {: I- p5 T1 o, A% s+ R
list.addLast(new Agent(Id));, Y& n7 g2 L# M) N* b
Id++;/ \* f' s( w* i A5 R% k
}0 i8 y3 C4 t$ n) r
/ p4 [. q& |, m; L4 O
public Activity activateIn(Swarm context) {
# Y9 O5 T5 l0 }' K4 D0 U super.activateIn(context);
y& @' w; X; ] schedule.activateIn(this);
$ F+ }/ ^' n$ B7 ^ return getActivity();" w- o6 I; M7 L* W9 O! I0 N5 F, c
}
- C, }% F N/ e% L9 e! v. W& f7 L7 q! b' P" u0 E! ^, C* A' Z
public static void main(String[] args) {& z9 N; t, n* f6 L7 u) j; ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) h0 V7 f2 J& h; h! e0 y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 ^( r+ j4 G- B. ? M+ I
swarms.buildObjects();
$ n: P- }% M3 Z+ o+ l3 a swarms.buildActions();4 I8 v u* N* X$ t8 w% N
swarms.activateIn(null).run();
1 Y% ^) Y s7 n; Z }
4 M, ~' h+ f2 y
* a; |4 w. c. C5 z9 F} |
|