|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 L0 I8 ~$ a( X. F b& a1 `" K I4 u5 S+ `- Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% o1 k' L; ?$ D4 ^7 }/ E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 ^5 }; M& r+ @; y5 r
swarm.SignatureNotFoundException
- n7 S, B: R8 M' a at swarm.Selector.<init>(Selector.java:76)7 i( T9 `1 o1 r% g7 W: K8 b7 _7 I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ q1 x" V- r1 N9 p; R9 g. x at ActionGroupDemo.main(ActionGroupDemo.java:67)* O+ n+ \. _0 a9 E( G0 y+ w
1 u% g& C8 B( Z2 b& ?) ~
6 I2 V" b) [2 ~: v2 o/ r, W5 v1 ~import swarm.objectbase.SwarmImpl;
0 P$ V! d5 r/ J, g7 v fimport swarm.objectbase.Swarm;9 C( ?1 O* d# y& L Q4 c1 o. Z( u
import swarm.activity.ScheduleImpl;3 }5 D+ H: k" Z/ E9 Q) a3 V! q
import swarm.activity.Activity;
+ g8 R) ~7 n$ h+ i( {$ M" wimport swarm.activity.ActionGroupImpl;8 Q6 A5 l6 w% n1 e$ C8 j
import swarm.collections.ListImpl;
) D3 ]4 {3 H4 `2 u( h8 Y% f! Rimport swarm.defobj.Zone;
3 P+ {4 Q# p8 ~import swarm.Globals;
4 S0 z% N6 C: R, ?* ]- Z. kimport swarm.Selector;, F& x0 T9 J6 o6 \3 I& ]
import swarm.activity.ActionGroup;
3 r N: p+ T* ~2 T- n. ]0 `class Agent {
) J9 O3 v8 j5 V2 w N; h8 }% S% P4 O) T char id;
6 L3 n. R' K% g* `$ E L5 a# L4 r! O. G: ~
Agent(char id) {5 X& z& r) Z5 Z
this.id = id;$ p9 Y+ I/ ]0 _: Z
}) G. W( C3 k8 X5 P! j e: Y
4 |8 @8 e% Q! Z* y& u. U public void agentStep() {, o/ W. v% i% B! ~- ?/ C
System.out.println(id + ":" + Globals.env.getCurrentTime());, B7 j& S( |/ y% D! R; F+ w0 m5 n
}% o) t2 n; ]$ n/ A7 q
}6 N3 C0 k" i0 V# v7 [
9 {2 z' y9 Y# b+ P$ opublic class ActionGroupDemo extends SwarmImpl {
, q* y" `8 I& }6 m8 _, g) r ScheduleImpl schedule;) c, C' C$ ^$ @4 e
ActionGroupImpl actionGroup;
& N6 _* G$ Y) A; ? ListImpl list;/ A1 r6 n* I- S* C
char Id = 'a';' |/ @2 w: E6 e
8 u$ X2 l) e! U0 [, K
ActionGroupDemo(Zone aZone) {! V x2 o* h9 I
super(aZone);
2 p+ c0 k' D$ X7 V# \ list = new ListImpl(aZone);3 b3 A, S9 T0 N" T/ G5 e$ \
swarmSetp();
( n+ c+ D$ M9 s$ M8 t( y actionGroup = new ActionGroupImpl(aZone);$ c( g! D* ]- ?. |5 H, P
schedule = new ScheduleImpl(aZone);
5 O7 L: }7 c- O ?0 U1 L; X; v try {3 e+ G* Q/ C: R5 k# j7 g7 L+ E5 @5 ^
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 L8 y9 j* F; s$ c4 F
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. }1 q: R3 c' @
D H- ^% X* L2 p
actionGroup.createActionForEach$message(list, agentSel);
5 K1 z' C' Q, _# g actionGroup.createActionTo$message(this, swarmSel);& Q' g8 A3 i. p9 g2 }
schedule.at$createAction(0, actionGroup);: q z$ A) B! O. U- W& ~9 l" R* o
schedule.at$createAction(1, actionGroup);0 K& @ D% H" m' q7 d% ]/ d
schedule.at$createAction(2, actionGroup);
% d5 D( d% N4 t& A* x0 |( a5 ^) U" `4 @
} catch (Exception e) {
9 O% l# v& ]" i" n* h e.printStackTrace(System.err);1 A' Z" K4 Y& h: v1 b: o, ]
//System.out.println(e);- G/ r. N; S# a; r0 a" E
System.exit(1);
2 u' M* G. F/ {% K2 ]7 g }
7 q1 J% a: w/ |1 G+ L; N4 ^% B/ T+ N, J1 X
/ q/ s& L: T0 x2 c& C }) d9 K) M |* w) `
* b' }& E3 v. M, b3 d
private void swarmSetp() {* \) E+ V( r) N6 L/ b& H$ ~% P9 K
list.addLast(new Agent(Id));
2 c( k5 g1 c/ r Id++;
4 D# l! ^8 L, c' ^/ g, K. i1 q }
% x7 x# t. p! W
% g7 O% e3 Q9 @( W: Q' ?3 j public Activity activateIn(Swarm context) {
; A; v" e0 n. B super.activateIn(context);: r- s0 ~+ G9 n1 M2 G
schedule.activateIn(this);$ [5 F1 ?+ C+ r$ e2 A# C
return getActivity();
% \9 C* ?6 n& c! Q }* K0 e; l% w. p& U5 V( d
6 _" Q" o% D/ h. ` public static void main(String[] args) {2 d: ^3 V; s; v \! _/ u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) r8 ^8 J2 D5 W' X0 |( T3 z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: a4 p) V* O7 ]7 o: j6 I/ C9 l
swarms.buildObjects();3 G6 t3 N1 U/ J7 A" h7 r9 U
swarms.buildActions();2 @, n9 ` p6 I# z+ V
swarms.activateIn(null).run();* @; f, {8 G. J6 z/ D+ P& S$ D. V
}9 i3 h# J) K0 S8 T, H! n
$ B6 o2 S. I% i& l6 L- z, g
} |
|