|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 T* Z6 q1 D+ l7 y) f" x7 N
. `0 g. L3 O/ `" a0 j* f) t$ M0 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 v" ~$ a+ Z& X* Z0 V$ t" H9 s% e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ a8 F$ d% Q2 x
swarm.SignatureNotFoundException0 ]7 A7 q+ G) \4 r' o. S
at swarm.Selector.<init>(Selector.java:76)
# S/ y" P5 w8 ^: L at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 \1 S: h2 C- X1 }$ G2 h* p at ActionGroupDemo.main(ActionGroupDemo.java:67)9 b0 D/ L$ h* U2 U ]( W
& x6 J5 K" Q( b8 }- K% ?' J& H) K) L1 |$ G
import swarm.objectbase.SwarmImpl;
- S4 V+ a# _: t9 \+ ]! W' ~9 w" \import swarm.objectbase.Swarm;
3 v1 g" t2 c! w0 Z/ Gimport swarm.activity.ScheduleImpl;
$ s+ Z! D8 ~* o$ [: Jimport swarm.activity.Activity;
# @1 Y+ o1 m6 P v7 D1 pimport swarm.activity.ActionGroupImpl;' | p' i7 M7 m
import swarm.collections.ListImpl;6 y7 g4 {+ J2 Y( T- T1 h
import swarm.defobj.Zone; 4 V p5 r9 k z" @3 a% {
import swarm.Globals;) t5 A5 c6 L: C g
import swarm.Selector;
2 S6 L5 X/ t9 m# t0 M6 Uimport swarm.activity.ActionGroup;
1 [8 h/ ?, T- \# f/ ~, i' ?class Agent {% @) ?" q9 s3 P5 F
char id;& {; O/ X2 ]! ]2 R8 _
7 n' V+ t) O4 j& a. t9 Z/ m) F Agent(char id) {7 U7 ]6 F6 R8 l
this.id = id;
) U3 |1 L# t& p$ P9 G! G! x }2 O' k& D) ~9 Q) J( }, Q3 i& _
! t8 p! X% M0 o public void agentStep() {$ k7 U/ J! n6 i- r) M, h
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ R G. O) y* U& V7 M' @4 M }! L/ r: c; g% C1 x. q
}0 Z( O4 w% ?, S9 M. O
) s4 w3 |; G* x6 M) |' Z* E4 Zpublic class ActionGroupDemo extends SwarmImpl {
4 L. S2 _ G7 D/ w) @7 T ScheduleImpl schedule;
4 ^8 ~; i5 K2 J9 r. P$ y G$ ` ActionGroupImpl actionGroup;& E2 T0 i2 q0 L0 k ~0 R" W; @9 t
ListImpl list;
8 }: i1 U5 R8 ]1 y char Id = 'a';
1 f7 N6 |7 ]+ `6 I
0 ]# d( r9 V" n3 e/ D ActionGroupDemo(Zone aZone) {* ]) D4 \5 L+ m0 g. q
super(aZone);+ ? ]# ~, k% M$ A8 f- a7 h$ |
list = new ListImpl(aZone);
2 s& h+ b: y" M' z swarmSetp();$ y' Q7 q) F8 W" [& T! h
actionGroup = new ActionGroupImpl(aZone);
3 y! r5 Q. d3 u: a schedule = new ScheduleImpl(aZone);, A) H! ~3 G* ^9 ?# {
try {' }; i+ T7 K# ]/ w" D
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. U' r8 S% {3 B* e" A$ G4 | Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 ` n9 q4 ~/ }6 S7 N; l/ E& o
% r) { g9 o: _$ n+ d actionGroup.createActionForEach$message(list, agentSel);
: \9 h$ Z. U, l* u; Q actionGroup.createActionTo$message(this, swarmSel);
3 z- |2 D; m9 |6 z5 {5 C8 u+ R schedule.at$createAction(0, actionGroup);
( T: _( [1 e% y" f* k schedule.at$createAction(1, actionGroup);' p2 M, v9 }+ G+ ?0 [6 _& t/ b- E) h# [
schedule.at$createAction(2, actionGroup);
' a: X9 u8 m) A$ _) K1 A
2 K# B9 U. o; }) a } catch (Exception e) {
, H9 k N) e0 A. U# M$ C e.printStackTrace(System.err);6 }$ D j, q) |
//System.out.println(e);7 ]9 h) y. K4 y1 b0 L5 s
System.exit(1);
& r/ w- }1 z# x" t( {6 z6 V }8 I; D8 [: V7 P1 }: t8 ~8 `# l" o
; u# }4 U: S C
0 ~5 ~2 M0 c4 u( l( ~5 {. W0 |
}# {6 U* O* C% ? X- L6 w% b
6 S3 d$ N) v1 n( r$ f/ P private void swarmSetp() {, _$ k' r! i! A7 c* ~; o
list.addLast(new Agent(Id));5 \7 ?: b* ~$ |" p' @8 ~, w; ^7 ]
Id++;
0 B( X; j7 r! p7 k" Q( z }0 @) a( m7 O, t4 D5 H$ |) e
& v& P: Z4 a4 w( G+ j" H0 T
public Activity activateIn(Swarm context) {
2 X/ U( N5 h! f! W7 z5 G' R super.activateIn(context);7 M1 _9 \" x! ~: z
schedule.activateIn(this);$ E6 z- H9 a9 ?# ]0 D* f0 r
return getActivity();$ m. `; z U; C" i
}0 N+ X5 T5 l; g, O
1 w& a. E4 \8 P- \ public static void main(String[] args) {
& K! S( k B+ r$ x4 i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); Q! \, g0 s- v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 j$ [6 S6 V2 h* S swarms.buildObjects();
& v- G0 n3 M9 G% W# | swarms.buildActions();
1 C% _ N: |% A5 Q- D( e swarms.activateIn(null).run();
- A) d3 _$ u I% ] }& i1 d8 M* X! b& C
: C: s1 I8 M x- Q6 O- i} |
|