|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# q9 s2 _, u( e- g9 n: `4 D% P: |9 L; ~$ {( A3 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. y& w) U! R9 Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 R+ `1 x, i6 c( j7 H& O
swarm.SignatureNotFoundException
' e% O& r0 F) @: j4 k, K at swarm.Selector.<init>(Selector.java:76)
: \9 `# j8 }" C1 i: c$ Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ |6 p4 `4 X" k5 K3 Z8 T" x
at ActionGroupDemo.main(ActionGroupDemo.java:67)( B2 v; x( t' W2 Z" ?2 ^5 y7 u
! R; V. R4 E: K- y
! }. b, T' M* w6 K; Q& C B7 O1 Kimport swarm.objectbase.SwarmImpl;
' R( [) @- I7 l: Z* iimport swarm.objectbase.Swarm;
2 v; a M5 w! W1 c! A) e* K2 ?import swarm.activity.ScheduleImpl;
- X* m9 h1 U2 z5 [import swarm.activity.Activity;& N2 H. Z. [# V& Q( h
import swarm.activity.ActionGroupImpl;/ }% i, V+ F2 V
import swarm.collections.ListImpl;& K5 N, @5 L* v- M
import swarm.defobj.Zone;
6 W# z! q& N, `2 g" K) u/ w; H1 {$ |1 Mimport swarm.Globals;
5 i7 Q/ g$ h) j0 s5 u9 D- cimport swarm.Selector;
* S s" U4 a( J1 g7 R: w8 r) mimport swarm.activity.ActionGroup; ' y' i, e! b! m. O
class Agent {
# P/ K* b# Z$ R0 f, F+ R+ Z char id;- E3 P4 h, L, r9 R
9 z1 i4 O: U( [& ]* z$ q7 p- _
Agent(char id) {
( w6 ~8 ?+ b8 ^) f! x2 @ this.id = id;
% C5 m, p+ C1 F6 `2 i; b, I }
4 F) C& V9 H! d/ c9 ?4 P# a8 Q* X1 \# p7 g6 Y7 W; q
public void agentStep() {
( O3 F& s# I$ t. q) ]+ U System.out.println(id + ":" + Globals.env.getCurrentTime());# b5 H" m/ d9 l; r
}2 l2 t6 g8 N, Q" [9 T
}( E( w5 S$ T$ H: [2 p/ h# G
& _! D ^ q( T. L p7 d
public class ActionGroupDemo extends SwarmImpl {
/ T& s# [4 D7 C$ A- R1 n ScheduleImpl schedule;
, q1 c( ]" p4 p' e% X7 o* Y ActionGroupImpl actionGroup;, L# h; a( T: |2 [. r
ListImpl list;4 X- w- `$ o5 N7 C$ D" ^
char Id = 'a';. T& C& L$ F7 t1 x
' [# z0 W( N* V ActionGroupDemo(Zone aZone) {6 \- V. X. s0 e! {
super(aZone);
6 U, O0 V0 e+ d$ s8 j4 T list = new ListImpl(aZone);
- Y: S, x8 b! @: E) m! H swarmSetp();2 N' \$ F& Q7 m- F; o' I m" D4 Q+ M
actionGroup = new ActionGroupImpl(aZone);
( v }1 |& B& d+ t$ U schedule = new ScheduleImpl(aZone);
. l% n" ^: N$ n2 Y! v, b try {
4 E' L, m7 S/ z' M Selector agentSel = new Selector(Agent.class, "agentStep", false);
# \* o. g/ j7 r" P' M Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 M3 B _2 ]$ q. j! Z9 _
0 Q4 C6 L/ E I% q6 `
actionGroup.createActionForEach$message(list, agentSel);
( P- P2 ~* H. Z/ Z. N: k, J" f actionGroup.createActionTo$message(this, swarmSel);
+ |. |, J A% {. z5 x5 s, J; @2 l. U5 N schedule.at$createAction(0, actionGroup);
* A# f( w9 `9 v7 F& O' X& e$ {9 L schedule.at$createAction(1, actionGroup);
6 q- e8 j3 ^% W( ~ schedule.at$createAction(2, actionGroup);5 r" f! ~0 i7 [- [6 A m! \0 w
; Y& r9 l8 |% V5 V
} catch (Exception e) {
+ r, W" z! ?9 N( ^/ d" P4 i9 M e.printStackTrace(System.err);
3 m5 ?( R' m) S6 D( _& ~ //System.out.println(e);# s6 @+ U5 t7 C- i- R
System.exit(1);
0 D4 v5 B0 M; B m) u }. F) B r3 J) J4 r' N, X v" v
& p4 _) i/ _% _5 b) E5 R+ i0 C% o6 }4 l+ d' o8 A, _
}" ]3 H4 F% Q) r& u$ o: H
9 F) v7 S2 E: C; p# E8 v* A: ^
private void swarmSetp() {% b- U J$ X/ U, W- w' l
list.addLast(new Agent(Id));
3 k6 d4 {$ u7 }! @+ h+ b Id++;
3 n" O; t4 s/ Q3 r1 k }' {6 n3 C6 V/ u. y
- r) d3 Z9 X& d% W8 }' m( {
public Activity activateIn(Swarm context) {
, h6 s9 J7 _. P1 A% i super.activateIn(context);4 ]/ |% x2 E+ P# m, ]* D$ o# q
schedule.activateIn(this);( b; d6 M: J0 F9 `1 n1 t; Y8 A* r9 U; R
return getActivity();, V4 c; {/ s2 s+ `5 w4 r
}( k, e4 v) i6 E! l8 O) @" T( e
% a* o$ g0 E1 c I2 X$ E public static void main(String[] args) {+ F/ |9 A! {' F, q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( @9 p8 f! s% \' |4 v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, L/ R r" V* P- ^5 n4 X+ A
swarms.buildObjects();- U* X7 c5 p" z2 c# T
swarms.buildActions();
$ q& ?1 L, d3 A9 I* D/ { swarms.activateIn(null).run();* v2 B! L* ~# t6 J' ?
}
) w: j4 \; l9 Z( Z& g5 U: z* u( E. Q; Q; p9 o" m# h# a
} |
|