|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 I% S- F s1 Q% i' K Y" g
" p! |; z) G1 o7 X$ g# [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( G2 U! i4 K" l4 g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( x' R, j; o' m1 d$ |/ G+ L
swarm.SignatureNotFoundException
7 l; W8 D; E% _/ y at swarm.Selector.<init>(Selector.java:76)
2 s1 e* X: H4 D7 p) D% } at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( y0 R) ^2 R% C r9 c( v ]+ c at ActionGroupDemo.main(ActionGroupDemo.java:67)5 R4 N# I0 {8 x8 E) U1 C
2 ^9 u3 R' O, @ C e! u
: k% F% H+ F4 A/ \import swarm.objectbase.SwarmImpl;
+ K+ g- W9 q0 x* q5 F himport swarm.objectbase.Swarm;
% A- ? v3 V; s8 Q8 s- aimport swarm.activity.ScheduleImpl;
% {5 z* q. m1 pimport swarm.activity.Activity;
5 Y/ F+ r4 H/ d+ g9 Ximport swarm.activity.ActionGroupImpl;8 ^+ G k, `! O3 V% O' r C/ c: N8 c1 E
import swarm.collections.ListImpl;
- W. q$ k3 A/ A5 Y& X$ U. q# d/ Oimport swarm.defobj.Zone;
S2 I3 y# A3 f- p" S/ k1 vimport swarm.Globals;( `: I: ]9 @1 u8 Z+ D: Z
import swarm.Selector;
! J8 O3 V3 v+ v* ]# dimport swarm.activity.ActionGroup;
% M1 f1 i, i+ hclass Agent {& j) R; c0 |/ b3 q5 I
char id;/ w: C, K1 v0 t1 V
9 ^# z4 a- U2 O5 N0 R& H Agent(char id) {
2 k5 O: _4 e( {+ v this.id = id;, W& X5 |' H5 U
}
, | G* n) W6 N: c1 c U4 U
2 U" t( t) c' w! J; n( q4 w public void agentStep() {
3 _6 t4 t& I- {) m- K5 N; I System.out.println(id + ":" + Globals.env.getCurrentTime());1 R$ I+ Q. o3 o. c
}7 r' J2 g% f/ S
}
9 p1 A: R, `6 W5 |2 K2 E5 @, g+ J
public class ActionGroupDemo extends SwarmImpl {
( j+ }8 S& [- J5 ?$ y ScheduleImpl schedule;
: G ]6 f! G4 K+ P8 H( X% ` ActionGroupImpl actionGroup;2 H4 N# }- B) ~* H3 J4 l' u
ListImpl list;1 ]! q' E; s# [
char Id = 'a';
) w' o' ~, I2 ^6 | _5 @+ s) D
( `1 G+ E+ p, \ ActionGroupDemo(Zone aZone) {" b9 \8 k3 [8 ]+ ]
super(aZone);
9 v3 p* m+ x6 U( ^) @% Q; F list = new ListImpl(aZone);
2 u* L7 J. {, \& C0 ]7 S7 L9 u swarmSetp();7 U4 ]; z* l; F9 H5 U& @
actionGroup = new ActionGroupImpl(aZone);. x& a" d. y# A, O) i
schedule = new ScheduleImpl(aZone);: p+ h* e. ~6 L+ f, S q
try {
" b! e0 k' r& x' f4 t Selector agentSel = new Selector(Agent.class, "agentStep", false);
; Q. G. A0 p1 _& p0 T4 j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; E* j( j- d6 ^
! x7 e: W( I8 @# z4 u e
actionGroup.createActionForEach$message(list, agentSel);
e" \5 P) r5 t9 D) b: o actionGroup.createActionTo$message(this, swarmSel);
" v Q1 r% R$ V5 g" w0 o% r+ g# B9 d schedule.at$createAction(0, actionGroup);) t4 w8 D8 z& U& c
schedule.at$createAction(1, actionGroup);( Y+ L6 {/ B! [4 p) a
schedule.at$createAction(2, actionGroup);
3 }6 Q+ N+ Q1 @9 C3 u2 \
: h C% I" e5 ?; Z" H) T } catch (Exception e) {
1 B$ e7 L$ k0 N' f% @ e.printStackTrace(System.err);
) |. T6 ?( N# c' `8 ]& Q: ] //System.out.println(e);* i! Z5 g' P4 e
System.exit(1);, t7 P. W2 E5 Y3 P! J, n! S
}7 ~3 o# y$ Y" u. W) s9 a3 n6 z
6 S5 W8 K( [2 i0 }
" E: v( {7 c0 X) U2 z; | }
3 f, Y" t$ p- m) n& h! M$ p/ h
% }# z0 s3 `3 S& |6 P8 n private void swarmSetp() {
" X- i0 K [( a7 o1 @ list.addLast(new Agent(Id));
+ s3 M4 {4 l5 Y$ q0 e# Q5 v Id++;
( _- h8 r" }3 M: o }+ s. t; s1 i7 m/ O/ K9 W
2 w' l/ T* g( h" P4 i; P k public Activity activateIn(Swarm context) {5 v1 T- z9 Z! g" D! ]8 P+ W
super.activateIn(context);" q0 ]8 i2 c( ] |5 o
schedule.activateIn(this);
4 b9 V5 g* r0 P return getActivity();" S0 r# {5 L" _. n
}" y& o$ ^1 y% X, E! s/ `; N
1 b% ]6 }# I" h
public static void main(String[] args) {5 r7 K1 s+ x7 E4 P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 v+ R* ]3 x8 t6 a Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 K2 e: e" i7 p Q% ^# c6 Q swarms.buildObjects();- @- ^/ ?) S) T+ ?, z
swarms.buildActions();
$ X: `3 R5 s( a' ]. J4 T swarms.activateIn(null).run();$ M3 K+ S5 N. }( c4 V! `3 L
}
$ _: O/ `! w0 z5 N. C9 S ^
( K X) A% b! S4 ?& k/ F) u* L) o! e} |
|