|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * q' {. ` W# l9 g% _0 d
% S" R+ Z+ J6 Y1 d0 n8 V9 n, V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ d+ X& I! B* }6 i- M/ k- V- e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 P0 U8 H8 Q9 v! o. Y: u" H- _swarm.SignatureNotFoundException
2 ~. q" I# s0 g% l& T* m; N; P5 w$ W at swarm.Selector.<init>(Selector.java:76): m, K) k' n9 r' G/ o; B- E3 d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 ?5 ~5 j8 O8 J at ActionGroupDemo.main(ActionGroupDemo.java:67)! s' ^; M4 o' f O7 m$ q
4 e# @) m3 E+ Q0 y. H# h: A
0 P! t7 \/ E& W+ ?import swarm.objectbase.SwarmImpl;
) |& ~/ s' w+ W+ Iimport swarm.objectbase.Swarm;8 N. m6 c! t# w2 Q$ G& }4 `
import swarm.activity.ScheduleImpl;4 G& R- E5 D. n3 c6 ~0 s* ]
import swarm.activity.Activity;
4 r- C6 ^, a0 E! w6 cimport swarm.activity.ActionGroupImpl;9 |1 U% G8 j# x- M! I7 C
import swarm.collections.ListImpl;
" t: i/ J9 C& y5 H0 d: [0 l8 Aimport swarm.defobj.Zone;
. P8 I' |2 T! n) O/ l6 O) l' Aimport swarm.Globals;1 C. O( t* N$ B! f4 y
import swarm.Selector;, O' w9 v, m- t$ D# d
import swarm.activity.ActionGroup;
/ |* P( M$ f5 u& Yclass Agent {( i2 @2 z0 P5 Y, H2 q. |1 W5 [
char id;. ]1 R2 R; u0 @1 o8 O2 k; T- f
' A. g7 J. o A# L
Agent(char id) {6 a, y! t' l' C9 m2 V7 H; N
this.id = id;9 w7 B( M9 p" N+ l: ]
}
. J- x2 y/ H& c4 ]3 @4 _8 @
4 Q) C) V! u8 A/ Z public void agentStep() {7 w3 { d! M# c1 x0 G) c6 G) U6 ?
System.out.println(id + ":" + Globals.env.getCurrentTime());# U/ w5 X( \) c
}
/ @/ n; r q. W" e}# \5 n- k* X/ T
. w8 v! C# W. N6 Q- L6 l
public class ActionGroupDemo extends SwarmImpl {
& Y3 G& w/ K1 S0 f: N5 g: K9 i" o ScheduleImpl schedule;9 R" k/ U: x: i7 b9 S; j1 h
ActionGroupImpl actionGroup;' E1 f5 _; j, Y0 B$ J, o
ListImpl list;
, s3 s7 [7 b4 _* Q% g: t char Id = 'a';
" [1 Z }' S4 X# ]) e
$ g6 H& M- f4 x% U* _, K, w ActionGroupDemo(Zone aZone) {
* [# I. T0 M5 Q! H% A V super(aZone);* d- a4 Y- Q( ~4 U
list = new ListImpl(aZone);4 b7 |8 Q/ ]; T8 |/ F
swarmSetp();3 N9 i- t9 I3 k3 t# ]$ v) h4 Y
actionGroup = new ActionGroupImpl(aZone);2 s, ?$ l/ ~# T( a* e( o% @' S) L: v
schedule = new ScheduleImpl(aZone);
* |6 T% ?0 n1 Z4 F7 k3 {: c try {4 D5 @/ f2 j) f' P2 ^2 A
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 G" L5 a! }% U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; A, [, I) j$ d; S+ C- `. ]- ?
$ y5 d% o' \) m; d actionGroup.createActionForEach$message(list, agentSel);4 {: L7 L2 o* Y! l2 k1 H
actionGroup.createActionTo$message(this, swarmSel);0 |. f6 L* ?# {: k. ~( l n
schedule.at$createAction(0, actionGroup);" q, ^& S( Z0 s" Q' m7 V
schedule.at$createAction(1, actionGroup);7 X, }: |3 T2 L+ v( R' ~$ [
schedule.at$createAction(2, actionGroup);# |- F9 P8 I* ?7 f) Z( T
9 S/ P. H4 F( Z; T. |- u
} catch (Exception e) {! R7 C! s- g2 q& u) E g: j
e.printStackTrace(System.err);
- r5 R$ T* t: \% F" Q7 G/ ^8 n: M% z# L //System.out.println(e);" f! Q2 U9 Y: w3 v: ] ?
System.exit(1);( @: E; Z/ V' H: j9 Z( r! o
}
8 C) a9 {- V4 N9 C1 b9 ]2 h8 b, e& k' U6 U! k7 O; c) l
# k& {9 u3 h. Q; J) T9 y( I }) C# ]0 D- R9 X
, M1 { P6 d1 a# W2 L
private void swarmSetp() {, u3 O p+ R5 B! N! `
list.addLast(new Agent(Id));
/ Z* X" ~3 W* G' Y; r Id++;4 a, o! F* Q! c# O
}
& Y- f) H# e( g' Y# m2 V, U+ g. l- a7 |
public Activity activateIn(Swarm context) {$ L! ~6 a% a" K A
super.activateIn(context);
* o! n$ n! d% Q8 l) @- l schedule.activateIn(this);/ x$ G, M2 B q, t' _' s
return getActivity();! S. C! E' F7 @2 m) X( B6 {
}% [1 h/ x6 ?3 G/ d" V: R$ [( x2 s
2 W5 v: i) b4 I a3 H! D7 Y public static void main(String[] args) {3 l. z& x8 e! p4 K/ ~6 P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% p1 |% C s) ?% |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ ?1 D- Z# T' u, V0 Z7 Z
swarms.buildObjects();$ ]0 K. f0 q, U2 o J1 {4 a
swarms.buildActions();5 L* i ~6 H# M: B) ?- @. s
swarms.activateIn(null).run();
% B" C8 P3 ~" U; A( E }
& D0 R7 U# `3 q+ s/ u
4 G. @" v% B1 X2 `/ P G% m} |
|