|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 U3 ?7 x5 A8 t" t8 Q7 K% d+ z! A. n; s5 K: e: ]. p0 T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! l9 w) ^5 J+ [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 v4 c4 d9 \% g5 T$ \
swarm.SignatureNotFoundException8 ~- N2 O5 \( u {% D" T
at swarm.Selector.<init>(Selector.java:76)3 u* h! v$ C `) Z8 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); G( L0 a* R) B/ D$ C8 f. _
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( l: W" N6 U& G; h3 x, n. d; t7 N
3 B) e% B( u+ L. _7 a; O! Q, Q5 Z2 B# T, t
import swarm.objectbase.SwarmImpl;7 P* Z4 j2 V( x- N
import swarm.objectbase.Swarm;* J! x) |; K! a
import swarm.activity.ScheduleImpl;
& [5 K9 F* P1 _1 nimport swarm.activity.Activity;
8 h& W% t# L1 M( W, f9 q- ~8 `9 L, ]import swarm.activity.ActionGroupImpl;
. ^/ }* x5 a* s4 b2 jimport swarm.collections.ListImpl;
4 S( e' R6 F8 T0 F7 @) M) pimport swarm.defobj.Zone; & J2 n$ T& f* e
import swarm.Globals;
4 l/ g- ]6 R$ _8 cimport swarm.Selector;7 A* |0 i: o+ y1 T; _
import swarm.activity.ActionGroup; * i* S6 X/ u& x( X
class Agent {3 o; {: F5 o; M) J
char id;, M! ~& g' X( V* L; X- R
# F w7 V; s- \" I; Q7 U# U
Agent(char id) {
/ n, v+ [- A/ j5 m0 a this.id = id;# A# U1 }( e: J1 S& e/ q% w
}
7 X. |1 s+ d* T2 E: e& M$ C3 b: H) V& }6 c7 c; P, u( c1 v+ T1 G
public void agentStep() {
; e6 Q# J( B' g2 N4 s0 w System.out.println(id + ":" + Globals.env.getCurrentTime());0 D* V6 M8 S" q' b& s O
}% m" [$ {6 r+ Q2 F4 v& y& e
}: e3 ^ \9 z# T
0 F1 E/ |/ A( _+ @/ R, A( p5 J }
public class ActionGroupDemo extends SwarmImpl {
7 N5 u7 x% o M* W ScheduleImpl schedule;0 \) x, x( @; G7 i5 b# p, @
ActionGroupImpl actionGroup;0 b9 d8 m+ e3 Q v/ U3 {, Z
ListImpl list;7 Y/ b7 ~1 n& e0 c
char Id = 'a';
3 _6 |7 u2 e# T! p6 Q3 f* D$ I5 c) {# R1 o \
ActionGroupDemo(Zone aZone) {7 h: l5 E' m- S3 m+ z; W
super(aZone);2 \4 `0 l, [5 \! X: [
list = new ListImpl(aZone);
% ^" W- u% S4 S7 F2 i% a4 m swarmSetp();
9 D# z6 @1 Z4 m/ i" V actionGroup = new ActionGroupImpl(aZone);
! H) n9 D. H- m schedule = new ScheduleImpl(aZone);- a( R6 d# j$ O. U
try {7 |5 P5 B: z0 g5 ?6 Y! n: o4 y
Selector agentSel = new Selector(Agent.class, "agentStep", false);( Y) a5 Y$ c' M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 |1 n# g3 i6 \: Z5 K& j9 R; t
! n: w' k0 ]% U' R, I4 O, M+ q/ p actionGroup.createActionForEach$message(list, agentSel);/ C1 @3 h- Z7 ]+ C, Z; H7 M
actionGroup.createActionTo$message(this, swarmSel);
. O% w! m4 [& t* L/ V schedule.at$createAction(0, actionGroup);1 I( t# r/ V/ ` c' T
schedule.at$createAction(1, actionGroup); o9 W* x9 J/ m! J& j' _
schedule.at$createAction(2, actionGroup);
6 ]! z9 ?9 P+ y/ D' Q$ G* t1 I* f
A" K( C1 R: C+ J/ N' M } catch (Exception e) {
1 t* s: H5 G. U e.printStackTrace(System.err);8 S0 L8 f$ w' p6 u' u$ S% k; s- K
//System.out.println(e);) [( q+ T# `8 [7 M# `# m$ U: T) [
System.exit(1);3 Q% S) I% c* @& v5 Y) u
}
6 q6 ~: a4 i) j c
* j9 n2 c% W& V% ]# y7 s9 E. s# Y; i6 Y2 H
}) I3 x- G- z7 ^
4 n( U- @( N/ {/ B
private void swarmSetp() {
; i" I1 K s9 z& k* h/ Z list.addLast(new Agent(Id)); u4 ^1 |% v8 S H# }
Id++;' D( `* a5 Z( H: U
}7 Y1 e9 ]& e* o+ ?% h7 R- A' O
' V2 _" z4 r/ e, F( @ public Activity activateIn(Swarm context) {
; E; q6 { o! a$ Z, V super.activateIn(context);* W9 o/ W2 z7 f) N5 d! z- E
schedule.activateIn(this);
5 ^; t& g/ \/ P/ Z- d D8 U$ W return getActivity();3 O$ E" I) \0 x3 a9 Q$ b0 {. p
}
6 P$ r. H6 P/ m. K
! |1 I) t! k1 S& f3 V( J1 E public static void main(String[] args) {( b/ Z. u; `1 ~+ N& M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, R, r$ e% ~3 Y/ P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) O- A1 d; ?8 c& Y0 z: O- z
swarms.buildObjects();
/ F0 j/ F! X) B8 i swarms.buildActions();
7 C$ I" J7 C4 |: m) s! M/ @ swarms.activateIn(null).run();
6 l: N; X0 P2 L" {* J8 r* _2 W }
7 ^( e4 |$ u e1 g. B
" H1 @' j( z0 e+ }6 H8 J} |
|