|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 |$ g3 `" c$ g
. Y8 z$ d7 J6 J1 G5 {' A" r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* h) W! f1 }' L0 n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) c) n& q- C: N! u
swarm.SignatureNotFoundException
J5 Q9 r' D+ S7 q; h6 a! g at swarm.Selector.<init>(Selector.java:76)
; g" `3 D5 H/ ?4 i) U- b# s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* R& e' j, D, y5 n( m
at ActionGroupDemo.main(ActionGroupDemo.java:67)& J2 \& r7 x( E! F' D* Q
% B @2 M2 V1 ]& R7 ~ Z! h; R9 n
import swarm.objectbase.SwarmImpl;
8 @. l* Q0 Z# [; l8 eimport swarm.objectbase.Swarm;
9 t7 J2 D9 h3 L" V C- O! Rimport swarm.activity.ScheduleImpl;
5 w9 Y0 C5 w* n5 S/ K% \import swarm.activity.Activity;
" O* L3 @+ G+ s6 Q& d- Oimport swarm.activity.ActionGroupImpl;+ _/ {7 K5 {' {. a
import swarm.collections.ListImpl;
$ t- {' h f" w3 Bimport swarm.defobj.Zone;
I- }) D" Q0 H) H7 C* y- x. j9 mimport swarm.Globals;1 T9 n+ `0 J( L
import swarm.Selector;
& l; ?4 f! e1 x2 {# [# vimport swarm.activity.ActionGroup; 9 |4 [( A' u, `, O1 R% t( w- c
class Agent {
* h& c1 k" b H0 |+ L. k, l+ ^ char id;+ c* m. p0 v5 `" X# C$ g
3 `9 Y+ G/ C% i3 @. i
Agent(char id) {0 E9 u2 u2 O+ a* q
this.id = id;
9 s- V& I! I+ d0 ^ }6 N. j. r$ X: J. I. C* I% b/ I
" U+ h! m1 Z5 H1 O' a* { public void agentStep() {
4 \+ M* r6 } P. h System.out.println(id + ":" + Globals.env.getCurrentTime());- |+ g* f! ` t( J
}" G- A# |. {% F+ g/ [6 c! \# I R
}
( U, a$ t$ O' [% @+ M+ q; D3 C1 a
public class ActionGroupDemo extends SwarmImpl {+ d% R* L+ v6 R- ?8 y
ScheduleImpl schedule;- c1 d0 F$ d U" r9 N- { b2 [
ActionGroupImpl actionGroup;
! M: Y/ E" @- f1 D. e+ ]; x ListImpl list;, P& g$ X( r* G
char Id = 'a';
o1 t- }; j; O$ a. n, @" o d. p7 J% ]
ActionGroupDemo(Zone aZone) {# q! c9 H/ N* Y4 y5 _7 Q
super(aZone);0 X3 r- S" a/ ?, o
list = new ListImpl(aZone);
( E/ E+ g$ O7 a7 j: `4 |+ l swarmSetp();+ ]. }' D2 T$ ^3 B1 e4 a) `4 N
actionGroup = new ActionGroupImpl(aZone);5 D8 w1 M; i! k# g
schedule = new ScheduleImpl(aZone);
! [8 S' N, x1 G2 R try {
" C5 j" n. f; ~' S% S/ q1 u# x$ T Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ k. @; y1 J3 g0 s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 u5 Q7 q% R" s" d, t( Y% i: o
! Q! O: m, r. Q9 L/ j' O7 b7 S actionGroup.createActionForEach$message(list, agentSel);2 ?/ X) r/ o. s
actionGroup.createActionTo$message(this, swarmSel);
% D/ H u0 F% a& D# U' [ z schedule.at$createAction(0, actionGroup);
, l E% y6 N' Q6 c! L3 B4 ]% C; m9 @* { schedule.at$createAction(1, actionGroup);' l7 L6 X4 y- S
schedule.at$createAction(2, actionGroup);7 O) x; U0 Q2 ]0 b1 f" c, d4 Q* }
+ h& \' H# D0 [ } catch (Exception e) {
0 V% a- y) _# a! [# l ` e.printStackTrace(System.err);
9 m7 |6 E7 S4 [& ?9 v' d+ J //System.out.println(e);4 J+ j4 X7 p+ k: O+ } a3 s5 M; v
System.exit(1);
; x4 t5 H: w8 [4 P" { }
9 @" ]) }0 D1 T) h
3 D3 E/ G2 i3 P9 n r
+ j' ]2 B3 h) Z! B* I" e }
# C- _( u7 `, i7 [# `% `3 }9 K
8 W) J+ E+ w; c- Z5 x9 O) ~ private void swarmSetp() {. j* L! P. M" V: D# o
list.addLast(new Agent(Id));4 Z6 s9 E. p; F% g* R
Id++;
% _9 Y( l, M2 D6 y }
: q) j) s1 c, M2 g" Q- g& W
8 d4 R6 F. ?4 l9 Y public Activity activateIn(Swarm context) {
5 w8 O' ]8 A7 A. { super.activateIn(context);
2 R$ l# L7 h' ~. b% E6 t5 I schedule.activateIn(this);! e5 b8 z+ l' K1 N
return getActivity();% b) ~2 { i+ s; y$ J$ T
}* ^5 a5 |- E p( t. p
V" P7 G3 |! F6 k public static void main(String[] args) {
# e! p) v" q" p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 J; {6 e! m+ [0 F) d, I: m9 C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) a* @8 {, Z$ h5 F% G" d7 z/ w swarms.buildObjects();
2 A2 r! Q. h) b9 n7 t5 u! W7 w" R swarms.buildActions();3 b6 o' |) D# w% ^! Q6 }4 n: j
swarms.activateIn(null).run();
0 `! P: R7 K: b, w7 I }' I" ~" H6 H4 j5 [1 ^; N: g
1 l8 |9 Q5 i* }5 S6 u( ~( d
} |
|