|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & n% R8 z7 e+ r# B; m
0 b6 d& ~, [& _$ S$ R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ z8 t( a3 p3 W7 X' f+ l4 d1 P8 U8 i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 V3 M: q7 m" p: f( C
swarm.SignatureNotFoundException, D# p& f; s5 X0 P, T
at swarm.Selector.<init>(Selector.java:76)
9 U: K; a6 x# G7 Q4 } at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) F; j( W$ m+ ]3 N" X at ActionGroupDemo.main(ActionGroupDemo.java:67)3 c5 D" m0 b8 Y8 H
- y% D- E K3 B
+ G1 C, x& H* W" {) d- V) Mimport swarm.objectbase.SwarmImpl;6 J5 I. \* ?! O
import swarm.objectbase.Swarm;4 C. o2 j+ b! X8 o; B8 h8 A
import swarm.activity.ScheduleImpl;
# G' z9 |; }, d5 S$ D( u4 Zimport swarm.activity.Activity;
; X' S$ Z2 \ u6 X" Aimport swarm.activity.ActionGroupImpl;# ^3 G5 U9 }3 N3 g
import swarm.collections.ListImpl;2 _: t7 l' C. I3 P( E
import swarm.defobj.Zone;
9 e# f& x: z6 k0 u4 mimport swarm.Globals;3 e4 t9 d7 {+ t
import swarm.Selector;
+ B; S+ K7 S3 ~; L. P- H1 E" Z6 Himport swarm.activity.ActionGroup; # x& ?& K# ~: p
class Agent {
' l a% m& E6 m: N2 b' L8 B# H char id;' @. j( t; `7 R3 ]" Y2 p
' p- a# M: m% ]# }' B. U Agent(char id) {
2 n' h8 y p" o; X; ~/ t S4 k this.id = id;
! L2 L$ \- Q$ ~! s1 X }
" o! U8 e& k* i# ?: e% Z: I: X+ C3 n: S# ^( ~& e4 E
public void agentStep() {
1 R: i* U+ g0 M/ n0 ?; b( \ System.out.println(id + ":" + Globals.env.getCurrentTime());8 b4 d4 O/ i) E- X7 Z6 O
}
2 n9 V- E. }; M& B}# t& Y" v, ^2 h0 F3 t2 v- R
8 ]+ q8 C5 U" t$ a& T" Q1 z; a
public class ActionGroupDemo extends SwarmImpl { h! ~* [9 H& A* {
ScheduleImpl schedule;
/ m6 y* E1 u" h( v ActionGroupImpl actionGroup;: U/ V/ h0 Q* P3 o. O- f$ |0 Z
ListImpl list;0 G* e5 j2 e, l8 m' J$ j6 g
char Id = 'a';, N3 \7 e% D. i) o7 k2 k0 T( Y3 l
$ o) s) Q9 R8 S$ `3 U8 @4 D9 u
ActionGroupDemo(Zone aZone) {
: @( o8 u5 p& S super(aZone);4 |7 n6 r# y- t: u$ ?# @ S
list = new ListImpl(aZone);
0 ?8 k/ B0 s' E7 y# O swarmSetp();
N) s, j$ |4 H, ~ actionGroup = new ActionGroupImpl(aZone);$ B: s& X j4 H) n& Y& I$ [
schedule = new ScheduleImpl(aZone);
9 i9 `9 U0 A9 r' }( y! b' ?2 ^. i, w try {' V' e) d$ u- {1 |0 N( i- C$ {, I2 Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);
[) G+ `5 y" \ K( j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
v& M$ M) r( F& b K
- w. s$ H) e' v3 I" O actionGroup.createActionForEach$message(list, agentSel);0 F$ ~( e$ D# _2 F1 B4 Q1 B0 {( p
actionGroup.createActionTo$message(this, swarmSel);
2 ]7 x& T' X# l schedule.at$createAction(0, actionGroup);
1 G8 S, ?% X9 p$ y: A) c# n: ] schedule.at$createAction(1, actionGroup);9 c, G) k( C: s" }6 m# A3 X3 Z
schedule.at$createAction(2, actionGroup);
3 C# U' x; n2 c: U$ M2 s h9 g! v/ ]
. u# V1 w: M! i7 I4 v$ P. V& A } catch (Exception e) {9 ~9 M+ G/ J0 ~
e.printStackTrace(System.err);
) ^. g$ \+ I6 T. N; r ` l$ T //System.out.println(e);
" f% \* g$ u7 h& w3 b System.exit(1);
8 k* m% Q* z% ^- ?$ J9 j }2 Q/ ~# T0 j% W% ^; F8 e
: m3 L N+ x1 z& p1 e7 ?
1 X: I' F1 k1 { A! f0 p }
6 M* v& Y5 L2 r5 |+ G
. b7 K# p0 p1 Q" i1 B. i private void swarmSetp() {
9 l, p4 U4 Z8 o list.addLast(new Agent(Id));
7 h3 _4 M5 k8 }% M i* P9 n) { Id++;
, D4 T f' d V( u: x6 a }
6 k8 v6 M9 i+ E9 ~/ ~! {; [$ z" |$ l4 R- r* \/ i+ c
public Activity activateIn(Swarm context) {# \* I2 _( l/ l% @
super.activateIn(context);
( S9 [* C% r' ]/ R) h schedule.activateIn(this);
% Z1 P7 Q0 D/ r% G& e6 c return getActivity();( g* B }) K- e* @* L
}
% {' o; B) Z! [ _& J) |% ~2 R+ w/ a
# n- S( L# V; T' |- G7 p8 a public static void main(String[] args) {! ?+ v* r6 n; s* z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); Q; @1 M/ {6 x
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" c& B J! n( T5 s' H0 _
swarms.buildObjects();
7 K @1 M n/ X1 S swarms.buildActions();
- {+ X$ e w! m: b) f+ n swarms.activateIn(null).run();0 P, ? k" Z* p/ X/ D
}
7 t- h' {4 e; x# F" k6 ~ g, ]. g% W7 y3 z9 k7 G u2 v
} |
|