|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 h4 T9 ~$ Y+ u: n, Z, m2 I3 I$ ?
6 C: T# G! s9 d2 R, v9 _. x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ v6 e( R; t* F/ u5 I6 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 E" o/ E7 a# B4 h- P( V+ b- W5 V" o& qswarm.SignatureNotFoundException! x% A& ^8 R0 ]' u& A, G& o
at swarm.Selector.<init>(Selector.java:76)0 g" v! `: h. r8 i; ~7 V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" x8 A Q& E1 y/ K# |+ M- H: b, S, } at ActionGroupDemo.main(ActionGroupDemo.java:67)
( u' b3 Z2 v6 a' O; E$ W
$ A: o/ z2 m5 k6 _
* i; q( w' |( j* Timport swarm.objectbase.SwarmImpl;: o, I6 L1 v. H8 v. j8 F2 ~
import swarm.objectbase.Swarm;
' |0 j1 V P; Rimport swarm.activity.ScheduleImpl;: R, `& e7 l; |: O
import swarm.activity.Activity;7 W4 I8 r/ q$ e9 F& } ] s
import swarm.activity.ActionGroupImpl;( s' g0 m& w5 A" @' r$ l
import swarm.collections.ListImpl;/ g3 O# K8 D* ]) z w }
import swarm.defobj.Zone;
+ T$ a, U: \# w( s' Z m6 {import swarm.Globals;
. M; w) X8 I1 R( e5 simport swarm.Selector; {4 U2 U9 |, Z/ D& `# M$ z/ d3 c) ]
import swarm.activity.ActionGroup; ( X) X# S3 [* I6 `! ]% H/ q( m" O
class Agent {
# M n' V9 l \ ]3 k( N: Z, u3 h$ @ char id;
$ r9 x: t: ]$ h) g" ]: i0 j- p: `
Agent(char id) {
' W5 [ y+ U2 V this.id = id;
! G" x2 N$ b v! x }
# v) E# u6 w+ P! P6 [, z) h2 _6 z! E& k* E0 n2 f2 T
public void agentStep() {* D; {0 M- F Y; c
System.out.println(id + ":" + Globals.env.getCurrentTime());: S: o7 c/ r9 b- r# p" I
}
6 d3 t3 C7 E( f5 @3 Z V0 Z6 m5 B}1 M/ U# k; U. n! ~9 `; \% g
7 @+ g! @7 l) `public class ActionGroupDemo extends SwarmImpl {( d8 Q! ]2 `* y& G8 B& `" |1 X
ScheduleImpl schedule;
! m% B5 R% a& K y) V* n3 O ActionGroupImpl actionGroup;( g- A% |' U; P4 y* z6 B
ListImpl list;8 e: L8 y5 U) C: f6 I
char Id = 'a';
: D: O0 r% N( E0 E" B6 J) s/ S9 ] I/ n: ^2 J# K7 I- `
ActionGroupDemo(Zone aZone) {) V& `' g' D4 K/ @ k) d
super(aZone);; B( ]3 _2 W. z, C( H* s
list = new ListImpl(aZone);
4 Z" z6 P2 D9 g$ O swarmSetp();" @) {/ I7 E( s. j
actionGroup = new ActionGroupImpl(aZone);7 ^! F, c3 L; f7 I* S% x. t
schedule = new ScheduleImpl(aZone);
7 s. [/ d0 F( b# j. | try {
) N3 A- S' h8 q$ T Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ ?7 \( G: Y- r- S; [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* I m3 Y" T$ }5 l3 j) h
9 e* V( f8 n% P; Q7 m
actionGroup.createActionForEach$message(list, agentSel);
" s; V j. }. [& u8 o actionGroup.createActionTo$message(this, swarmSel);
, S3 d$ P( p2 K3 m schedule.at$createAction(0, actionGroup);2 h$ Q! y6 U' ~5 U6 D, D$ i
schedule.at$createAction(1, actionGroup);
6 V1 S. I9 Y( w- V schedule.at$createAction(2, actionGroup);
; K3 Q* W* A& P8 t/ V. c3 d% O. |2 v- V0 A. T( U( T$ e
} catch (Exception e) {- S1 F0 M% s: J3 U4 Q
e.printStackTrace(System.err);% t4 s9 r+ X3 `8 T& Z+ G
//System.out.println(e);! Q- Y( f' X2 }- ~; r# S
System.exit(1);
" y* a6 J1 F- n! e. e1 j }" \6 k3 {/ m! F8 Q, G/ p( T' K1 @
# Y7 r/ ^. c6 J% x' Y, t& R* T c+ W/ \; ]* F! V0 _; J
}& }$ ?& G2 M$ `2 I8 _
+ l7 r3 i# e: h private void swarmSetp() {
6 H0 q2 x! @5 [. U, k list.addLast(new Agent(Id));% u0 r$ w ^( B. ?; U+ I
Id++;
) a3 i9 w; _( O# E, g* t }
7 [: d+ C0 N4 O8 s- \/ L. D/ w3 A! Y6 Y7 b
public Activity activateIn(Swarm context) {/ {- U, k: `9 j% v5 M
super.activateIn(context);! d( H+ J1 N% B( w2 J+ n
schedule.activateIn(this);
3 h s( Q0 F9 Z/ W+ C$ a return getActivity();
k4 n/ w! m: d/ W }3 F, q( ]& M% {+ c; l
4 I6 H0 G5 ^& ]9 T public static void main(String[] args) {
& ~1 n/ } S& y/ W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% r# I& t6 J z3 u# `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 O& u' ~: {! t8 u+ p7 \+ [ s
swarms.buildObjects();: D" h8 D7 k( R6 \
swarms.buildActions();' q- p. S7 ~! D; x+ V) w
swarms.activateIn(null).run();
# ^: p, N& V3 x$ V' r1 W3 h, \3 L3 { }9 X/ H6 ~" u2 W8 x4 m
' [& x2 f* L! d2 i# G5 C$ \' o9 h, l
} |
|