|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) [+ Y z& h# B; C I, ]& ?# T; s% \/ `" b+ x6 n6 G' Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' O* C) w6 Y2 H6 [2 r; Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 X1 G7 e/ o9 M, L1 K( w" S1 v% r
swarm.SignatureNotFoundException
# M% ]5 s. m* \' M4 @) N/ O at swarm.Selector.<init>(Selector.java:76)& G$ G3 I$ M- l2 ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ~! N4 k5 s0 d at ActionGroupDemo.main(ActionGroupDemo.java:67)! h# v& r. s# E; m* E5 q
' @2 n; |: F$ g! ]
8 L" L0 [" E9 uimport swarm.objectbase.SwarmImpl;
- C# `- F! _ w) X+ U3 u+ y Oimport swarm.objectbase.Swarm;, R& s" C$ Z' K3 ]
import swarm.activity.ScheduleImpl;
/ x% X4 E) w V) v4 f/ ~2 Limport swarm.activity.Activity;1 l: y5 S4 a7 M% j: a* m! }, v+ z
import swarm.activity.ActionGroupImpl;
2 F* S* s# D' ^# v) [7 S: Limport swarm.collections.ListImpl;
/ ?6 _3 P! {4 u( k0 V! eimport swarm.defobj.Zone; " x! s, m( R0 [) S$ H* T* m7 _/ g
import swarm.Globals;
; e6 C. y6 H( M/ G2 o6 L5 Jimport swarm.Selector;. k \' ~! I7 O$ s& s2 E9 j: r0 D
import swarm.activity.ActionGroup;
! a* F/ X/ D5 C% P" kclass Agent {" ~: P% y" @& S2 v
char id;
2 V+ M+ P0 P0 k# h' G3 H# {! Y* O; h6 U) e0 S Y, I! `
Agent(char id) {
7 S+ r: Q$ ~7 k* j% I% u& X# M this.id = id;. p m9 z9 M, l* c x9 }' S
}
3 r5 W# q( `5 |" G4 b+ E& {6 ]8 b6 v* o& n& F: ?9 J& `
public void agentStep() {/ a2 c- d) V( v, p
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ |1 s; e( r5 v }
0 S0 `% b' {1 }' }. }}
1 U0 o4 V o( E% z$ B7 b8 l, H& v# i/ W
public class ActionGroupDemo extends SwarmImpl {
) C6 C- \/ m6 y' R4 I2 { ScheduleImpl schedule;
& l3 |* X* U/ v& y. w: p ActionGroupImpl actionGroup;
+ |) D/ X, E7 D: Q' R ListImpl list;
# s5 Q' I" L% N2 ^3 m; Z char Id = 'a';8 W/ i) K r# p2 i( ?
) q8 f7 ~& C. ]1 K& N" f ActionGroupDemo(Zone aZone) {
7 M+ N0 t+ r t6 w4 _2 f/ F super(aZone);5 ?0 Q0 Z1 X/ j1 H* M1 L
list = new ListImpl(aZone);
' X; E0 w7 S' ~: y8 ^ @ swarmSetp();& q8 j" C. m9 W8 `; s+ k D; u% H4 ]
actionGroup = new ActionGroupImpl(aZone);
3 |% G- T, d! b9 R& D3 u) E schedule = new ScheduleImpl(aZone);, q# l7 ]: a* D' f
try {- M# ]" h8 K0 b, H0 p; F6 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ X9 D, \6 O$ |; i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& c' `6 f: P" ]" V7 o' N- ` ( ^' |2 v: W8 R, c& `( l$ r% ^* ^+ }
actionGroup.createActionForEach$message(list, agentSel);
1 p9 V* x- \. Z8 B8 h. f# T( J# | e actionGroup.createActionTo$message(this, swarmSel);
6 h' y- ~+ A# G5 K: ^& t schedule.at$createAction(0, actionGroup);
4 ], P% w: C. L& o- N* G schedule.at$createAction(1, actionGroup);8 t7 \& s+ m- B9 Y d6 D
schedule.at$createAction(2, actionGroup);: @: e4 T6 [. `2 h) ]6 ^8 a
' ?) G+ y9 ~" B* `9 I } catch (Exception e) {
p- [$ T. I0 j e.printStackTrace(System.err);# ?0 B8 Z7 ]+ C
//System.out.println(e);, N' X ?9 |. d( m0 j6 b
System.exit(1);
: a9 A+ {: ]! z2 P. ~ }0 C, H* v, i' |. B: [2 F* o. s1 H6 ]
@% L: Z7 j; k/ w
% p0 T' P; I3 ]/ X4 P }
3 }; ?9 G$ z/ D( X8 k/ h. L2 T. [# \9 @ k3 [6 D3 Q
private void swarmSetp() {9 O% F. S f B
list.addLast(new Agent(Id));
) o/ A8 J# g# l/ Z b( H! D Id++;
' H* O6 t- s9 N% Z' o @ }' v2 C) H- z! N4 c3 `
' U L, d- S$ C3 ?' n* H; I6 ^2 ~ public Activity activateIn(Swarm context) {
- g \) z2 i5 B% @$ E5 @ super.activateIn(context); C9 B, T6 |. v
schedule.activateIn(this);) ~7 e0 y9 X3 R$ k8 w. R
return getActivity();
' [) b' l/ ~6 Z: g( E7 i }
7 G6 b1 {+ P& ?8 }" c; o" o! W
2 E3 p \8 {* d. M, g public static void main(String[] args) {
5 A! }0 e- H& ?1 z; @; w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* F% `- C; E/ s& o5 s* |2 @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' E/ W |; r/ {$ F9 h+ { swarms.buildObjects();
3 }7 y5 b. L! w; K, g0 ^+ C8 G swarms.buildActions();' U% R+ _. P8 ~4 d! k
swarms.activateIn(null).run();7 K+ x* ]5 F1 n' u7 `: d
}
& a2 R5 ?0 X+ o$ ~4 Z
- Y. I# @0 i0 ?4 n' w5 L} |
|