|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& `6 v* A0 S- \1 @7 {1 Y' h8 C8 f% }8 ]2 F7 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) L2 _" [$ {3 y; Y; Q2 w0 O+ O, k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ G7 l. W5 D, T
swarm.SignatureNotFoundException
; w, U, X9 @% ~ n% S+ E( Y. @( M* ? at swarm.Selector.<init>(Selector.java:76) e4 u. |* a( p
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( e0 e; y% s- s9 e2 C ]
at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ t M' d6 u. _* m8 H. [0 Y, j. h0 ]; }, w# ]$ ?: h
, C- E0 M) x3 `2 T% Y2 p' X. x# Wimport swarm.objectbase.SwarmImpl;/ [) c. Q- I5 ~$ [8 ^2 F
import swarm.objectbase.Swarm;
3 D1 U6 Y; k* wimport swarm.activity.ScheduleImpl;
( `3 y. ^$ B( Ximport swarm.activity.Activity;
0 I: e/ S$ k6 e8 o w8 eimport swarm.activity.ActionGroupImpl;
3 ] m/ H% U/ p5 [import swarm.collections.ListImpl;
* R9 R( A9 B3 [import swarm.defobj.Zone; + |& h9 N! f' O8 q: m' |4 w& M( C. h
import swarm.Globals;( }1 o& \& o5 v2 Y4 K
import swarm.Selector;
( o! w9 a' U. w+ b% v# M& bimport swarm.activity.ActionGroup; 8 m/ r; V- R# a! s9 r. t( i
class Agent {( T/ X( \+ l h0 o: |! c( l: S$ u( ]
char id;/ W3 Y8 ~: _6 o) b0 C4 j
+ t- k# d4 b$ X, G8 z, T4 t" G Agent(char id) {4 q' I. ?4 F4 Z& l! @& @) u
this.id = id;
. Z" U/ y0 N# Z9 R- o! [ }
' D. ^6 \5 h. I" L
* X) A$ {/ i2 s' B; W0 x7 \6 ] public void agentStep() {
8 g) M! y4 R0 i. P$ n System.out.println(id + ":" + Globals.env.getCurrentTime());
: w* O {( Z, Q Z }
" ^+ p m- @( l9 [% P}
6 s& t) S/ Z! g5 M& q
2 L6 N/ I( t* b3 k0 Cpublic class ActionGroupDemo extends SwarmImpl {
' [) f* W7 b2 Q f7 o! H ScheduleImpl schedule;
& z v' x1 X) v. o4 Y$ { ActionGroupImpl actionGroup;
2 ?' _) K6 V7 l$ ^% o7 X ListImpl list;, O" H N/ c& C k( P5 n, t
char Id = 'a';# D$ Z& S& d- a6 `, {
4 K0 @# r) n$ X0 J7 D4 u4 n ActionGroupDemo(Zone aZone) {
/ w7 `. l* H, z% t, w0 y super(aZone);; c( n7 |+ A( t7 X( E8 C
list = new ListImpl(aZone);
# Z3 w1 ~0 {, X9 ^5 H z swarmSetp();6 W3 p- r" Q+ w9 F
actionGroup = new ActionGroupImpl(aZone);- U9 Q. R& h" L- v# ~. v8 d
schedule = new ScheduleImpl(aZone);. X. C) P: F2 Y& S/ `
try {3 J9 o8 S5 }4 D( C
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 ]; {* G1 n, ^' W9 _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) T% }* F( c9 l4 a3 G$ N
' G9 L4 ^( R8 P _) L6 N ~$ {2 Q9 V) N actionGroup.createActionForEach$message(list, agentSel);2 I+ _% f% k2 P! u
actionGroup.createActionTo$message(this, swarmSel);& ]* M9 e0 d/ b8 j
schedule.at$createAction(0, actionGroup);/ O7 `& G- v) l( f9 Z
schedule.at$createAction(1, actionGroup);3 o% R/ f8 E' }1 k- L }
schedule.at$createAction(2, actionGroup);" ?. d9 h5 K J$ T) B8 w
! h" r3 w# Z8 Y, N% F$ M. d4 G } catch (Exception e) {
- z( F, w; @ ~; G1 S! S e.printStackTrace(System.err);
! H7 t. U6 I/ e- F4 t" V //System.out.println(e);
' Y0 X( X3 k* \+ Y0 r. _. j System.exit(1);
0 Y. r/ i" W/ q. o: b }
0 b. D1 H2 v" k% `) t. a! c
1 n0 j1 N# s1 P- Z+ S
4 \) l# ]1 r) B! S1 Z+ y6 I }
M$ I; i* {2 g) D9 w
7 w& O1 |$ p0 c s @) E! S private void swarmSetp() {) ~9 X/ \4 f1 H5 k
list.addLast(new Agent(Id));
- U! l0 Y5 o% j% ^3 B5 @ Id++;0 O8 I/ q/ y/ Y, g) C+ l# D
}
- n7 C3 `) x% K6 p8 F& [: q1 h& I) P- R% A( s4 M W
public Activity activateIn(Swarm context) {2 f4 B+ u" ~- E% g
super.activateIn(context);
8 B; x) c4 q7 D$ D& x2 x3 q# E2 Q schedule.activateIn(this);
' u! i/ I. k) P1 ` w) R8 P+ b return getActivity();
$ u0 e, p( g, i) o. e, j7 j }
: H3 R0 j" [% Z$ e7 F8 ?' Z: I) s; t8 o2 C( e+ y
public static void main(String[] args) {
) I8 e3 @; z* l" E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 ]+ _; G# U4 x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* {& U+ h6 p) C
swarms.buildObjects();
" R) v x* T2 C1 D/ Y swarms.buildActions();( {; @! R$ m9 K7 {. K& ^
swarms.activateIn(null).run();" d# V% @8 U* w' w0 A
}8 ~/ ?$ J4 i. C. W) a+ r" c
8 u/ G% O0 H5 A} |
|