|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 q9 B! F I9 E/ S4 H$ X+ p4 |
; x+ G3 l$ Z& p1 e! C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 P- [" W( t" D# I' ]8 h M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 t f: C8 M- Q) R% s1 W4 mswarm.SignatureNotFoundException* C4 G0 }9 L' k: F
at swarm.Selector.<init>(Selector.java:76)1 ?" k: Q5 e/ n+ E" c8 y+ ?6 ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 `- E3 N3 B4 O8 ` at ActionGroupDemo.main(ActionGroupDemo.java:67): H; ?, d' m" }" R. [" i) p5 M
, ]; m/ d3 `# F% @( {/ g( p
6 n0 j7 `/ H7 q/ pimport swarm.objectbase.SwarmImpl;0 Q% c! k! f% v. N: r% q6 M
import swarm.objectbase.Swarm;' y! Y8 N: b3 `
import swarm.activity.ScheduleImpl;5 j* e$ w! R) J. V6 P+ S; Z. ~9 G. r
import swarm.activity.Activity;
& `2 m1 _. t/ \: x8 @4 W3 I& ]import swarm.activity.ActionGroupImpl;) B4 \' o, q; ]
import swarm.collections.ListImpl;
2 F8 F ] R7 w8 ]& u' A, Timport swarm.defobj.Zone; - s) S& e# n' [6 `' G
import swarm.Globals;
. h! n+ f2 D2 U& N1 V- F9 Gimport swarm.Selector;
; c! C( Z% \2 F" H# ]9 yimport swarm.activity.ActionGroup;
- k% V) T: O4 r/ y- X- ?2 y: W! jclass Agent {/ y: f' m# o) b% V( e( y; B" ]: T
char id;/ w0 ~$ |: p5 V# U. v. v
4 n: ?( G4 G+ F
Agent(char id) {
O& }# {' T$ J( V1 y( L this.id = id;/ y, ^( D: R- m0 V0 r" u
}! P! ~2 g5 |! f+ E( A
8 F6 A) A" e/ M6 p; G, r public void agentStep() {. p4 X3 u; g5 G# v
System.out.println(id + ":" + Globals.env.getCurrentTime());
% x8 r r& b7 w6 U0 z }1 a/ \- m, D/ ~
}; h! F5 ]6 J @( D# y9 b
/ m4 y) ` {" j. [; \public class ActionGroupDemo extends SwarmImpl {
: i4 K0 I4 v8 N$ m& T ScheduleImpl schedule;
; m9 J4 p$ @ _5 P5 z- W ActionGroupImpl actionGroup;: y8 o6 r: U! D
ListImpl list;
6 E1 c! a( @# x$ s8 c7 D# e char Id = 'a';& y( O0 u. _' E
$ u. E6 A* O3 e+ T
ActionGroupDemo(Zone aZone) {# e6 g: u* d; y8 Y& Y' F. g+ F& G/ t
super(aZone);
' |+ N2 S( x$ G- k list = new ListImpl(aZone);
; V/ [5 D( H- ] swarmSetp();
, Y& s2 a+ N* e actionGroup = new ActionGroupImpl(aZone);) r9 X$ t# }8 m4 r/ h4 f
schedule = new ScheduleImpl(aZone);( [! h9 y+ v2 \/ \- U& T
try {
- u* B6 z$ a( B& p0 Z Selector agentSel = new Selector(Agent.class, "agentStep", false);
" x' o$ \% w4 T0 e9 [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& L6 ~5 D; V) @
% D9 K. }. h$ {0 }1 } W! V actionGroup.createActionForEach$message(list, agentSel);( A) O Q# b6 ^% \
actionGroup.createActionTo$message(this, swarmSel);
# o2 V, k' \6 Z schedule.at$createAction(0, actionGroup);
e6 P. K4 [& E9 I! v( k) A8 U schedule.at$createAction(1, actionGroup);5 T" k& b( o3 W0 Y0 @
schedule.at$createAction(2, actionGroup);
% r8 T2 \# B1 U' ~* t
/ _( Z# o" O. i- e3 D$ p } catch (Exception e) {
! m: p5 D4 h6 K1 E4 e5 q5 v e.printStackTrace(System.err);. o4 L6 C- n R7 G5 G$ k
//System.out.println(e);
$ m0 V3 H. X9 c4 K* L( ~ System.exit(1);
9 q9 T/ _/ I" m- ~$ Q. G! f# K }
/ w5 w+ c( U. \
1 @4 x4 S( ^. M+ V& H) `* K& t- `& y# p# L- h! h( b
}
: m; V+ s' A/ R6 S) J( p8 f5 Y3 g7 t, Q; t1 |& Q% {7 i% `2 F
private void swarmSetp() {0 }& c+ S6 Y- f# B* w, w) n0 @
list.addLast(new Agent(Id));/ F- t# d) f" L9 Z: V
Id++;( R% c' f1 V4 t/ P1 t# M
} L3 @( K" g2 @. x8 o
% B Q! ~1 n, A: U4 N9 |+ z8 X- n
public Activity activateIn(Swarm context) {
, O' N6 m5 J# t5 T super.activateIn(context);
' J! ?6 J5 W% v* z3 a2 K' {6 c5 e, w schedule.activateIn(this);/ f6 n/ W5 K$ g( K* Z
return getActivity();
. p# N+ h' L" ^) d. F0 ]8 E }+ a3 E: H1 Z" R( w% b* S
9 E' W9 |. W; r/ r* K7 s2 y/ o public static void main(String[] args) {
' {0 p8 I; K' ?2 N6 r* l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& p$ L5 @( u5 ~. f2 }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: V1 O3 `+ n4 s, P
swarms.buildObjects();8 g {! f: m8 r+ z, \
swarms.buildActions();1 l' f5 s$ R9 k# g: q( J- j
swarms.activateIn(null).run();
z, t( c( p _$ J }
; L5 W+ R- I% y2 K( c! |" O. \8 g, ^2 V9 d1 ^, W% q9 E
} |
|