|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# J2 \& a D9 l" c2 u4 s
& I0 E8 M [9 Q; D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& w/ e9 M( U0 y9 u7 B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% f) d; @- {" Y' R
swarm.SignatureNotFoundException. t7 k5 L5 H3 ^/ L% _; G
at swarm.Selector.<init>(Selector.java:76)1 H `0 G2 G8 {7 i( f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! a9 w$ h1 N7 O* M0 R7 p
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% t, Y- `( }# K. p& N
/ p7 n7 Q2 b/ S4 f( f
n. w4 R0 C* n8 E' Dimport swarm.objectbase.SwarmImpl;
: i" X; H! i5 Q2 A7 u, kimport swarm.objectbase.Swarm;2 U2 t$ S0 R& G1 O4 Q2 A
import swarm.activity.ScheduleImpl;
* _5 J% v; [" O2 iimport swarm.activity.Activity;: p# u0 X% k$ y: c4 O
import swarm.activity.ActionGroupImpl;: H% h4 c! B) J* H4 V# f: \4 s
import swarm.collections.ListImpl;
, N1 T0 G6 P9 p( {1 w7 Jimport swarm.defobj.Zone; . _4 y$ B! M7 n w3 V
import swarm.Globals;5 a/ `! J# Q3 N, n e0 h. R5 ?
import swarm.Selector;8 F4 s A x. w! L
import swarm.activity.ActionGroup; % T" k* ?# |+ C' J% S
class Agent {
* v! c1 H5 ~9 H2 v char id;
7 P+ F- s1 Y9 E& M+ r7 T. F( L4 y
& ]: a% y: Z: ?4 K q Agent(char id) {" Y1 b6 C. ^( b% z; T U
this.id = id;+ c7 M% Z! _( b* @
}
! T5 A7 l, r( z! j) d0 i' n! q" {9 o5 z/ s& s/ a
public void agentStep() {- H# `& ?' S; s& @' d
System.out.println(id + ":" + Globals.env.getCurrentTime());- i5 ?( T0 ^9 Q& e6 V
}
" i6 _9 C( y; _6 {}
6 V; @5 b0 q2 h
' ^# N) r q! u+ h# w5 L( qpublic class ActionGroupDemo extends SwarmImpl {8 ^! H& U* _7 g
ScheduleImpl schedule;4 T/ y! x" t# U: a
ActionGroupImpl actionGroup;
3 z, A+ y6 }' |1 {, I, f ListImpl list;
! R- a& ~# R {4 N: ?7 g2 S% W char Id = 'a';+ N4 ^8 [1 B- L- @9 M) l R
" D5 r7 q6 m+ i9 l8 C ActionGroupDemo(Zone aZone) {
6 ^3 \' P3 m* `" I8 k- } super(aZone);8 t9 ]% e' @7 }" J6 K: a
list = new ListImpl(aZone);
2 u2 W1 u! L' C- l swarmSetp();' B! L4 V' _ o T( g
actionGroup = new ActionGroupImpl(aZone);
" a1 F. u- r4 W) U schedule = new ScheduleImpl(aZone);
( w! f1 a; G d try {' w8 g0 s1 J5 f# c+ t3 s
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" T; ~: B) l% u m4 U6 _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 T' V6 {, F( f7 ^- U n
" \/ y* Z9 |9 y4 b U$ _) B* ~ actionGroup.createActionForEach$message(list, agentSel);+ f6 N7 V* ?( N6 S
actionGroup.createActionTo$message(this, swarmSel);
6 ?1 Y- N) i8 {- _ k schedule.at$createAction(0, actionGroup);
1 Y; n# `3 [/ }, H! G3 _ schedule.at$createAction(1, actionGroup);( P! V/ e& k3 f5 T/ c1 e0 B$ J, i' a
schedule.at$createAction(2, actionGroup);/ e0 {( u! T/ f, ~4 @1 Q# X
3 h f( \; X# x; k, ~/ L- G9 y+ R
} catch (Exception e) {
7 W% r6 h1 B, p1 G6 ^8 X/ _ e.printStackTrace(System.err);( P' u. [+ R# |7 W2 m
//System.out.println(e);# x) z$ _, e* X# Y2 L/ S7 N
System.exit(1);; |' u! j) U! H! F3 c
}
# O: g1 j, O; ]3 n& H3 T0 U, W
. [6 b* Z# `1 a5 R8 u+ i/ s: z9 f3 b& l. u8 W
}
4 R6 c0 W2 H7 m4 T! |) n& b' [: }6 ]
private void swarmSetp() {) w, S, i/ b$ ]& x7 N9 L n
list.addLast(new Agent(Id));
' x! z8 |6 \+ Q' E2 h( ?. _8 S Id++;, X$ M. z, @) g! p5 ]0 i
}8 E5 s6 q1 `. Y' ^* `* f+ A
' r" }0 ~) a) l" ~' ~1 X ?8 X public Activity activateIn(Swarm context) {
w1 }/ _% ]4 d super.activateIn(context);
" V9 d+ C/ Y0 e# v k- m schedule.activateIn(this);2 B1 I+ B/ G7 J
return getActivity();7 r6 ?8 w) ~2 {
}
) m: Y/ J4 E2 r4 v; D& K' k1 h7 r7 Q: _( c/ T
public static void main(String[] args) {
6 a) U$ X' |- c/ n( D6 S) U( U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' l* I' O' u, K! b% O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
}$ Z/ k1 N4 O# B9 X& o& F5 a swarms.buildObjects();
" ?0 u% v- V# I7 u swarms.buildActions();
' ~# d; ~3 k. V- a- n" N* F8 w swarms.activateIn(null).run();
6 N9 Z5 ~* h2 h% [. p c1 ^% o }. l7 s2 F5 v9 o' o6 c5 o! ^( I. T
" h5 Y2 e, Q* e7 z. L} |
|