|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ u. G W$ f# \4 w0 k
! P! z& {2 D7 h7 @) }( a" a' I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- d- K* q+ u* z% `! p" l- B% q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- s% q# j2 d/ D8 i: B
swarm.SignatureNotFoundException
' B: F) k6 c- ?- p8 ^* s% W at swarm.Selector.<init>(Selector.java:76)4 m$ [. t$ D3 L( A3 r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: a, e2 |0 }) Q& z V at ActionGroupDemo.main(ActionGroupDemo.java:67)! A9 U1 T1 w8 |* k7 j! ]: S
+ v+ t1 L- S3 L9 b7 E$ n0 \
+ @ @& }4 H. M5 h& Wimport swarm.objectbase.SwarmImpl;- v- g% U g! K2 ]( R$ M! v, {4 C- h
import swarm.objectbase.Swarm;7 r" Y8 Q8 W5 D/ Q; U( k% b( ^/ O
import swarm.activity.ScheduleImpl;! e) G$ |6 Y7 {$ t( U; N9 d
import swarm.activity.Activity;" @) u$ q: d/ p- E, _6 V- p3 v0 ]8 I
import swarm.activity.ActionGroupImpl;0 D- G: j$ x/ G& G6 w- R" o0 i
import swarm.collections.ListImpl;% Y. j% c" | c8 \# o0 V
import swarm.defobj.Zone;
6 Q+ h k4 v5 B) V* ^3 Cimport swarm.Globals;1 }; F1 e, W2 u' y& f ~1 V
import swarm.Selector;8 g( t2 [7 i/ Z% q
import swarm.activity.ActionGroup;
8 q K) S8 \4 k# g2 m; y% ]; rclass Agent {
" R8 ` ~, s% p3 X2 Q" P char id;
9 f7 b) r. h6 R& i$ e! F. [( U% ]3 J% u! o( _6 P3 W
Agent(char id) {6 D U+ N+ n3 v6 @
this.id = id;
; f% Y f9 \5 x& r7 h }! N$ k! b$ N' G% ]' a/ O1 R; E9 P/ V
% Z u) J D( C4 W+ l7 K public void agentStep() {' }5 W) p5 U' @+ g
System.out.println(id + ":" + Globals.env.getCurrentTime());
! Y9 e M; w8 k6 Z C }
3 O x+ c" A- s9 ^, j. ~}3 L2 K2 S5 p7 d* y* v9 I
5 ~( {( @% A8 j: Kpublic class ActionGroupDemo extends SwarmImpl {
^& ]/ ?9 X0 P3 i ScheduleImpl schedule;# E8 s3 _9 z7 Y- n/ L' M
ActionGroupImpl actionGroup;
1 ?" f8 H# e/ u% ? ListImpl list;
J3 ~; ~; U M4 Y9 |1 F( B char Id = 'a';3 e ]+ u( Y( q: ]! W
2 N6 S- g8 B) D* C9 S
ActionGroupDemo(Zone aZone) {! `, e; \0 I; r3 s$ ^! E
super(aZone);
0 h* Z: Z' `! U y list = new ListImpl(aZone); ]- a- I" k O7 i
swarmSetp();
% x/ S9 m9 D! Q7 C6 {' F9 ? actionGroup = new ActionGroupImpl(aZone); H% W7 a' h, [! m) j/ {! f
schedule = new ScheduleImpl(aZone);
6 X! G' a3 S! h# Q- ~' z try {* \" l% r0 a8 z j; i3 e) @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( V' v e0 W3 `5 e6 ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- [% Q9 F5 Z M$ Q( D4 R& O$ q; E0 _: M$ h
; R8 l& s0 V! d6 L8 o$ K actionGroup.createActionForEach$message(list, agentSel);
; {; h$ T% v. W& \ actionGroup.createActionTo$message(this, swarmSel);
0 U: |4 S4 [, c& E5 C+ \ schedule.at$createAction(0, actionGroup);
& ]+ B3 a7 A& h! |: B, o; d4 x schedule.at$createAction(1, actionGroup);* |5 h M3 r7 ~+ `; @& t
schedule.at$createAction(2, actionGroup);
* Z! {7 Y6 v) r7 `# N, i; ]# B6 H7 t9 g* I! T: r
} catch (Exception e) {
: L0 ]6 O ^3 {/ d5 z( I( i e.printStackTrace(System.err);
8 C5 A" d/ U2 g //System.out.println(e);
, E' q2 n0 H6 d2 b+ h System.exit(1);0 G* }. o9 _( E5 E& d# q& d
}( Q$ g0 H/ w ^2 ^+ t
" J' c7 |( S0 @
( m* E$ W$ U5 Y' q5 b }' w% p0 T0 Q- g V
8 c" I: F8 |$ f; k0 p1 E2 t private void swarmSetp() {
5 {) z: m* K/ |5 z2 T3 Q list.addLast(new Agent(Id));
$ M7 q: B- J z( P5 ^( e' s Id++;
* J, p- O: H: }' J- k/ ` }
" b8 [' Y6 ]+ o; F- A1 @
0 l& v8 c5 z! ^7 a/ q$ }+ ? public Activity activateIn(Swarm context) {" @, X5 b0 H3 P- j1 Y' {4 f
super.activateIn(context);
) X0 a5 o% E) C9 N/ H schedule.activateIn(this);
4 R- F5 Q* l K6 V! N( S return getActivity();
- H' \, g& q* e# E& s }
0 }5 v' f3 D' T1 U+ t/ x5 q
0 K+ S" D5 E8 l8 L! o public static void main(String[] args) {: n( i1 j; \9 k" I+ o' b
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 K2 C; C( T6 U6 a Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 G( ~# K9 u2 H) x; z swarms.buildObjects();: q) o+ R" @ G/ B" q
swarms.buildActions();# Z, l& |" L' G& `
swarms.activateIn(null).run();7 }! O' x; i. I- N* [
}' ^; H! g0 |* E+ C) F- f9 D
# z8 r9 i. l6 M1 i7 t0 q3 p( R% j: a
} |
|