|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; S& t) u1 q7 k
5 d0 ]! ]( `! z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; b( D, l2 U5 ]4 l/ T- J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 F J& \" ]- \0 c5 V0 q1 a
swarm.SignatureNotFoundException
( ?9 ]% b1 P0 U' w7 e- p& Y% u at swarm.Selector.<init>(Selector.java:76)3 G8 U( d3 X% ^$ s4 x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' A6 F/ E3 e/ a( \% c+ m( u2 t at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ d: F. r6 n1 B% y4 l1 j! I- p7 U* q* J
4 G, N( X, }4 y9 n' u5 \* J! I. Qimport swarm.objectbase.SwarmImpl;
6 a; M2 ~1 `. z. X6 i1 oimport swarm.objectbase.Swarm;
/ ^/ y5 X; W+ X+ T9 n F; _# G& Gimport swarm.activity.ScheduleImpl;
+ L: n% l' [0 t3 o4 @) d. ~import swarm.activity.Activity;0 t/ l% V0 [+ ~3 @8 d8 B. F: {1 }
import swarm.activity.ActionGroupImpl;
7 w7 Y: r" \& ^import swarm.collections.ListImpl;
: F$ t6 h6 _8 ^2 D* c% j6 U; O- T) Kimport swarm.defobj.Zone; $ Y/ X }! Q1 O# k& ?
import swarm.Globals;& C$ v7 W! ^) I, q3 |
import swarm.Selector;* O3 G% `( ^! W$ ?" T$ U4 Y) S$ ^
import swarm.activity.ActionGroup; - p# H0 V& O7 k0 u- v# k! n
class Agent {
+ w1 w- L$ V. R) T0 J char id;
$ v5 r E. e s* C' m: G" T+ X2 r
Agent(char id) {
& Y7 |, Q# I3 {5 r6 L: y this.id = id;- t( C% l7 p2 A
}+ D& i$ ], ^1 E$ L/ Y5 i) _! O
" U* J9 d5 A2 ?8 Y- }' C
public void agentStep() {8 A( J9 B: ^" w3 l! S
System.out.println(id + ":" + Globals.env.getCurrentTime());
, T4 d+ G' n8 i- f! z }: D( E) R1 u- h; L6 X6 Y
}6 g( J) _! R6 [ C
- L, L: a- k( w5 o
public class ActionGroupDemo extends SwarmImpl {5 i( p9 T! A6 |6 O2 b: ^' s
ScheduleImpl schedule;! c2 G' Q2 V, k( ], M
ActionGroupImpl actionGroup;7 W- N' C$ f3 t+ v. {
ListImpl list;
" B2 J! e$ x* j- M8 Y2 @* V; t char Id = 'a';
k9 X" _: s$ M2 t
$ W, l/ D. m6 m* ]+ y% P4 n; U6 l ActionGroupDemo(Zone aZone) {
: l4 t* I- H1 F0 a) F super(aZone);
" [9 x! H! m- ^6 U$ s7 ` list = new ListImpl(aZone); c- C: p5 D% h8 q
swarmSetp();
* ^6 A4 V7 @9 A* I actionGroup = new ActionGroupImpl(aZone);
2 \8 G+ ^3 w6 u4 A+ L schedule = new ScheduleImpl(aZone);3 T0 g" A2 h0 J" q6 j' L9 ?
try {+ Y8 g" q2 P' A3 O: A; Q$ x
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 z5 U3 }) f; O% k- f- l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 {/ F7 \ c) j( ^
! b' u0 Z, P8 |# T# ~
actionGroup.createActionForEach$message(list, agentSel);
7 G# C% C, F! q; z& o actionGroup.createActionTo$message(this, swarmSel);; V; c+ j7 P0 U/ {
schedule.at$createAction(0, actionGroup);
! w- c7 t2 [8 t schedule.at$createAction(1, actionGroup);* [/ [: C/ Z# k8 T& @
schedule.at$createAction(2, actionGroup);
* @* a7 U4 e: X
' X$ A/ D. _$ x3 g$ P } catch (Exception e) {: b* w5 N. K: N7 o6 T3 F
e.printStackTrace(System.err);$ @* N' J8 q6 R4 O' V4 S
//System.out.println(e);
& \! v# Z3 P/ T0 @; z, ] System.exit(1);5 ?% ~' @. ?9 ]- y# ?+ N. v
}
& a6 J: y; P; i8 m/ C8 B! Q1 Q' t5 \& X9 J$ t
! c; }6 Q: C7 ?- {$ V$ _, {1 J a5 W
}( _ S) E; a1 H* M$ Q* n7 m; F- Q1 C
# N) ^0 X9 O b; D9 r6 B
private void swarmSetp() {. C' N; s0 ^0 j+ e9 D+ Y1 g8 P3 _
list.addLast(new Agent(Id));
, G3 _4 |+ B; B Id++;2 X& ~) M9 X+ ~" k
}
) F5 |. B6 P2 f( r5 m1 E4 Z$ K* n7 Y' m# i5 S
public Activity activateIn(Swarm context) {
, l0 C1 k9 u) w0 X super.activateIn(context);; J. \0 q, w$ ~2 {1 Y( n. ~8 O
schedule.activateIn(this); q7 j1 b) B7 }' g
return getActivity();
0 Q* ?, @2 N& I% z5 ]8 U) N1 | }
% J( Q1 m5 y {% ~8 Z/ T6 e3 {
% v4 m' S1 E9 U/ o public static void main(String[] args) {8 @6 W: a, J7 O7 S4 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. F# _0 ]3 T3 e S4 h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; \# Z# Z) h! X( X9 ?( G
swarms.buildObjects();
6 q0 s) }! ^& M1 ^# A" R swarms.buildActions();; b! i2 Q7 R0 P5 u- q% Z: a$ X
swarms.activateIn(null).run();5 @/ A0 d* w# r% D6 Y7 y; f7 h
}2 m8 R+ A k- ^
1 P' q# m: k8 ]/ L
} |
|