|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 F: L+ x+ w- y3 s) N' U o' @
" c( j. q# O' E) V1 |: l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 S; f; T' h* j0 H6 p5 Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 X, _ ]- L, N
swarm.SignatureNotFoundException, U+ `8 T0 A/ }$ z$ Q% y% k
at swarm.Selector.<init>(Selector.java:76)
& ^: I2 U# n. O v; T7 j at ActionGroupDemo.<init>(ActionGroupDemo.java:37), P# G \+ Z% m* }) i9 M. \* S# f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 Y$ r9 i9 v- G7 y; B- M" `1 n( l6 J" N( [# b9 T' ~
0 f2 h# m1 [1 L( P: i8 G# Q/ l
import swarm.objectbase.SwarmImpl;
1 U" m7 X% R) a7 O2 \# _ U8 Himport swarm.objectbase.Swarm;
. v. z" b0 s q1 @- \import swarm.activity.ScheduleImpl; J0 X" t9 f# V% K. Y
import swarm.activity.Activity;
( q5 A7 Y) U. }& b2 H mimport swarm.activity.ActionGroupImpl;2 h* Q% J+ v# G+ g9 N1 N
import swarm.collections.ListImpl;
- o% f) J. r ~1 ]8 E( ?2 W5 Q+ Rimport swarm.defobj.Zone; 2 z# Q; S9 v k( r
import swarm.Globals;$ E2 x/ I5 O+ j: G' A+ m
import swarm.Selector;2 E$ ^$ S2 n( Y7 P% Z
import swarm.activity.ActionGroup;
, B: S. u( {$ N- Q6 Z4 M: ?class Agent {
, S, o; g& C \3 m( J char id;
; b( w7 V& x8 g; M
/ K" `& t. B# L6 x2 J$ v Agent(char id) {
- O/ p" C& C; q- z: M( d( Y! H$ ]1 ] this.id = id;* L0 K1 U( v0 f5 _8 K7 o# R8 Z
}
( ]" w* j/ L6 B
; D8 W) i% x2 ]" e0 v1 U! d public void agentStep() {4 Z$ y4 Y! ]1 ?; G' d
System.out.println(id + ":" + Globals.env.getCurrentTime());7 q5 V4 J% }. { ^
}
1 X& s& G+ i9 Y4 r8 T}5 R# d% J w+ [ _( ^2 a) L
: k1 \6 k# V6 o3 @public class ActionGroupDemo extends SwarmImpl { S8 z. p3 L C
ScheduleImpl schedule;
# S& p) H" V/ m5 d* ], y/ X4 P) U ActionGroupImpl actionGroup;
# ~5 l/ j$ a9 z2 m0 C ListImpl list;. \6 H& z: P( ]! S
char Id = 'a';
& _: r& Q' u& c* H T! L6 w$ X8 q: B" ~
ActionGroupDemo(Zone aZone) {
' {' N* I4 B- t4 V4 x1 R4 ?: D9 j7 ? super(aZone);
) b% l+ W& ~7 m$ i, | list = new ListImpl(aZone);/ v4 [! q6 `6 W; ^6 H3 U" g
swarmSetp();4 j3 H) O p/ V- u7 ^
actionGroup = new ActionGroupImpl(aZone);
' D0 A) a; r% e* V% z6 Q1 a' R schedule = new ScheduleImpl(aZone);
! J' n& T; Q: {+ G; `1 h try {9 E& w0 S- P# k, p
Selector agentSel = new Selector(Agent.class, "agentStep", false);) c& {" x9 \$ ]+ z, R) m5 I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' n- s; x+ r& j- @1 _4 P M& l' [: D
4 m0 K$ {% A9 M actionGroup.createActionForEach$message(list, agentSel);. ^ l: X, ]7 p/ T
actionGroup.createActionTo$message(this, swarmSel);9 j! ^ _# `: Y" ]$ o$ w
schedule.at$createAction(0, actionGroup); T$ P* x7 N& U, H4 O) ~7 Z& z
schedule.at$createAction(1, actionGroup);
/ A) L& |( @% n& r8 X+ q schedule.at$createAction(2, actionGroup);1 [6 Z1 M1 ?2 h! R# ?5 J3 b
0 f. i2 R6 `) n) S" O
} catch (Exception e) {* e8 R* S2 m6 I4 F8 @) b2 k
e.printStackTrace(System.err);) m; r1 p D* O4 K6 a0 g
//System.out.println(e);. j6 z! p2 i8 i9 ~3 h! H
System.exit(1);
$ c' @$ D2 e. \# i# W# d) F4 L }
9 g# b R7 r3 [$ l7 ?" Z
1 G! b9 v1 G N+ V9 B Z9 x$ s6 p; A; W# z( A. I" l
}8 @7 z* W8 @8 f- o8 o
8 G. l0 [5 n! i
private void swarmSetp() {
2 w" R) E, z' i7 h6 g* Y list.addLast(new Agent(Id));
' ?6 y5 K* q$ a9 ~. w Id++;
" J! F+ y" Z- u0 ~ h }
9 |$ ^$ `1 u) D6 B/ h, [7 k. o+ V. d7 h( A" v" O
public Activity activateIn(Swarm context) {: W4 Z# W4 A' X7 ]/ L
super.activateIn(context);
3 I7 x, r5 S0 t5 @; [* J, j \ schedule.activateIn(this);
/ }# o' `9 O0 T6 w. U7 ~+ R7 n+ n return getActivity();+ J% ?7 Q- X/ B8 p& u% `/ j
}
, n) h0 s' L) r. e5 U& E+ B; e; B; J) N3 f" S
public static void main(String[] args) {
) c3 c# g) F2 r) \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 F. H' {( [$ V. _7 a: s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 c# t* ^$ b1 @) Z. R( q% ?
swarms.buildObjects();" y& C- A- r. e. F- J6 T
swarms.buildActions();9 F7 Q0 {6 a' Q7 c; N9 b! Q! P
swarms.activateIn(null).run();. P0 m% D! |; D" q& ]
}9 c" A6 ^) h; |, i' ?8 o. I0 @
F* W7 Q4 Q7 j9 K0 ~0 A1 I
} |
|