|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 }/ y2 A% W* R, |. s8 t, C
* B2 M/ F) _4 h( O3 ]4 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ O% x: ^* T2 n' T" I9 |. Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- T8 ]9 H( n/ H% \; nswarm.SignatureNotFoundException
9 W: O% M' F+ n1 `# w at swarm.Selector.<init>(Selector.java:76)* H1 U9 ?" P e, s3 l+ j6 o3 s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 ?3 l. a, Y& ?3 F( V# ]& Q9 O at ActionGroupDemo.main(ActionGroupDemo.java:67)2 H3 n6 m1 c/ Z1 Q! U. f$ Q- P
& Z+ ?7 Q$ J/ n
. w5 k" l( ?% gimport swarm.objectbase.SwarmImpl;+ l* Z! o6 p$ _( y' E/ n, |6 ^) \
import swarm.objectbase.Swarm;
* j- `8 X8 Z# I6 H1 G8 O% w6 }import swarm.activity.ScheduleImpl;
, _! q! h5 @4 P) ^% A; k& rimport swarm.activity.Activity;) O( {7 G1 e y* Q
import swarm.activity.ActionGroupImpl;" Z. j9 H- D2 ?
import swarm.collections.ListImpl;# F n: e' d3 x, g
import swarm.defobj.Zone;
1 y- x% F: y w& s) Himport swarm.Globals;6 z& S% C' T4 T9 e' O- e5 O
import swarm.Selector;7 Y* X9 Q) j" Y) A
import swarm.activity.ActionGroup;
0 m. h! q0 H; H. N& f5 Gclass Agent {+ B! S8 W. ~0 R( L7 m
char id;
' \4 z! N1 g j0 W6 j5 D" W( F8 R
$ D3 d/ N- ~2 J$ k3 o, ` Agent(char id) {) K/ ]2 R; w* m$ [' C# H; w
this.id = id;
6 \; B, H0 B! f, {! N }3 o8 @/ o4 ]5 s9 i
% V% x9 e0 w% ^6 _7 _ public void agentStep() {, B2 ]. r% H: k1 G+ h: e
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ e# P: y0 h& f. p9 s: _% k5 d/ z- e }
' j3 R& z% A- P; Y* o* n( F2 u9 Q}
9 d9 X1 T! K8 {) J1 J; ^5 f* d8 H1 W/ q. W: A
public class ActionGroupDemo extends SwarmImpl {
8 R w' W7 K& ]6 t ScheduleImpl schedule;
. q5 d v, [2 W* L. h/ j) \0 S7 f; Z ActionGroupImpl actionGroup;8 L7 F1 W3 [& @0 H2 ^2 r
ListImpl list;
/ p) f4 x1 M5 ?9 A7 w2 _+ s# j8 P char Id = 'a';
" E7 @ I. f+ l7 V/ {2 C8 M) E, p0 G, V1 v0 f% d
ActionGroupDemo(Zone aZone) {
0 U: v1 t/ \3 M* o+ D& P9 x/ h! f super(aZone);7 w4 A; m& T# H7 @% z
list = new ListImpl(aZone);5 I: {3 [7 H" r1 H+ I) ^
swarmSetp();
; i: k7 t- [6 l% K1 D actionGroup = new ActionGroupImpl(aZone);
8 l1 _% }* V9 x schedule = new ScheduleImpl(aZone);
6 d1 \1 A9 y6 P try {& ~5 [. G! T+ n$ I& G
Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 Q' Y# m7 V/ K& o$ i7 _; a* ]" b" S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" K, l6 O& d+ t- t! a" q( J
/ b6 S6 |; B6 q% ]/ @8 C' e4 m5 u* } actionGroup.createActionForEach$message(list, agentSel);& e6 W) N: p k F3 t; ^
actionGroup.createActionTo$message(this, swarmSel);
; M/ P( y! \6 }/ J* ^& C" I( i schedule.at$createAction(0, actionGroup);
" {8 c1 P# C, p& }! I schedule.at$createAction(1, actionGroup);
, y1 n: E" W. I: _) j! n; t5 K schedule.at$createAction(2, actionGroup);
3 Y/ w2 Y) ]7 Q0 d! o: g
F, D- r( a$ F3 P" w; Q1 z4 m: U } catch (Exception e) {
7 A% _0 V4 m" @ e.printStackTrace(System.err);4 t s4 {. \1 W3 U6 p
//System.out.println(e);$ U/ s8 u) j! S0 N8 Q
System.exit(1);
- Z& Q7 \, F6 z0 D5 U& ~. g }# G3 |( ~+ N g$ L7 |
2 H0 G) N& `% ^0 }0 C; M+ W
2 k6 \7 L9 R6 Z! n3 b }, F1 T: t" j# b: g, l5 l8 {
/ X* V2 }# j3 o$ z private void swarmSetp() {
) d% p3 U' ?3 Q; |9 g; ] list.addLast(new Agent(Id));
- O, q/ }9 j. Q8 y% s# j. W# \ Id++;
- W; {4 J% K0 x2 |$ n* ~ }- `. u5 S/ }. H- ~' J4 t* q
! D9 B# @3 I3 Y7 ?) x/ P& x1 N public Activity activateIn(Swarm context) {& n+ C# W8 D* m( v4 P
super.activateIn(context);( E% x7 P9 ?- E8 Y
schedule.activateIn(this);
3 u! V2 H. I% y6 ?6 o8 `6 d return getActivity();3 @$ I7 t G1 q2 ]
}6 S7 k0 ^+ X% P1 Y& Y7 E( O
- c; G7 a+ m; Q& }$ m; j7 n8 \
public static void main(String[] args) {) S3 T6 x2 x+ n' ]% Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 x7 B8 ~9 i+ |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- [) o( a! T- W swarms.buildObjects();
4 u8 c/ [$ E {0 g) I4 ]" T4 T5 y swarms.buildActions();7 h1 }2 w" Y% F+ G: ?0 e
swarms.activateIn(null).run();
% v2 }0 b8 B) }$ ~" g# T$ d; a( W6 c! l }
( T( }- f4 n& T/ g5 R- m h+ y
0 c! d& e7 L$ X+ c; P, n- }" n} |
|