|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & U, N# j0 s' g8 \
4 o* {# p6 D: |" ?% e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- z; T/ `! u+ x; }0 ? V. B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ m# z' l. o4 p
swarm.SignatureNotFoundException' \( m( h M6 W; U& D: w3 L
at swarm.Selector.<init>(Selector.java:76)
' n t6 Z/ w3 q8 c7 E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! V- H* G' c8 J
at ActionGroupDemo.main(ActionGroupDemo.java:67)" i, T F1 K$ C. x" Y4 Q% m8 m
. `- f6 s$ g' s; d% H& H& }
' v1 |* a' c8 S# }& H4 s! L: timport swarm.objectbase.SwarmImpl;
, {9 Q7 d- G* Z; {import swarm.objectbase.Swarm;0 G, M* z4 g, P& {8 f3 m
import swarm.activity.ScheduleImpl;
, n+ x' q9 g5 I. L6 K+ vimport swarm.activity.Activity;6 r6 ^) h# T" o5 w7 d- m8 O
import swarm.activity.ActionGroupImpl;
5 W8 B" t1 A& ~% V- s7 m1 \0 }import swarm.collections.ListImpl;" I$ `8 p9 R' S2 q1 r/ C7 W
import swarm.defobj.Zone; : d% b, o! ^3 R+ k4 X
import swarm.Globals;; B9 |; P8 r/ J) f! X8 ^2 x7 V
import swarm.Selector;
$ N, A) k$ u! G' |9 q7 a! H! wimport swarm.activity.ActionGroup; - N3 w8 E: u3 F2 m
class Agent {! ]3 x4 R( U7 f2 v/ W1 b, @
char id;
1 [# d- N% t+ Q, ?4 D
. K. S! H5 r7 H7 ?0 p Agent(char id) {
5 u* m" K1 L3 U, O" V, i0 j" Q1 a g3 ? this.id = id;
( R7 f* v+ A0 B- o8 c }# V) M( c7 p) f
P% d* Z3 D& Q( e* A5 K
public void agentStep() {
& _. F( S+ N) t: h& E. @, y System.out.println(id + ":" + Globals.env.getCurrentTime());
0 _& r9 L' @( G" u) S/ m( B }
2 |" s) y5 j! U4 Q# N8 e% B}% V$ l2 Z( V# Z
+ D8 K2 l. @, T8 ^
public class ActionGroupDemo extends SwarmImpl {
3 x/ J* x+ J4 c$ q! f& z ScheduleImpl schedule;8 ]7 l o" L0 ?" N+ M* \
ActionGroupImpl actionGroup;" ~8 F7 p6 w* d& W+ i! p
ListImpl list;
* D* {3 T% c7 ~ e char Id = 'a';
; a! x4 R) t) ]5 N. ?! D- i8 G! G' _" f) H ~' W
ActionGroupDemo(Zone aZone) { `1 @* T" Z- e; Q" Y3 [: X
super(aZone);
2 x8 |. [7 O$ ` list = new ListImpl(aZone);& `& {6 ?1 e `
swarmSetp();; ~6 F$ Q+ p( F7 V6 d' |& D6 ?
actionGroup = new ActionGroupImpl(aZone);
3 o' G: e) F5 n0 S- y schedule = new ScheduleImpl(aZone);
5 R9 v2 k0 d; l" `" q9 Q0 J try {7 E- M }# \4 M6 R0 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ d5 a8 L6 I$ Q8 u( Y& _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, ^: T% g n/ q- v 5 U S" M5 L" P$ _9 L
actionGroup.createActionForEach$message(list, agentSel);; h; ~9 x! Z% p0 I3 g1 F" _) W
actionGroup.createActionTo$message(this, swarmSel);+ w z9 Q, ^# v* f) m
schedule.at$createAction(0, actionGroup);! N. l4 W2 x1 D+ d# a
schedule.at$createAction(1, actionGroup);
! d& O) j" W0 M3 s) p; Y8 A schedule.at$createAction(2, actionGroup);9 k+ |5 Y) X3 z+ d8 w
; h: n: }8 V7 `& y. u6 k1 a } catch (Exception e) {
" N. U: y& P9 ]# @6 M" I3 r e.printStackTrace(System.err);7 C# L0 k' a" Q3 o c0 [+ V- c- M2 t
//System.out.println(e);
0 J- ^$ T' ?' ]! P, [7 D$ z& F; h% ] System.exit(1);
7 K, A6 R z- v! u7 H- x: ^, v }% Q6 w9 ` r+ X B
* U# R; m, T( O+ X/ c; B! F; [& I* }
}
6 E8 c; I6 L* v6 Z7 C+ e/ I2 q$ N% e# s; |- k) }
private void swarmSetp() {$ J/ }) |' M/ _/ }$ l% L
list.addLast(new Agent(Id));
" U O) w+ H5 a% ^$ M" ~8 c Id++;
# H1 Z8 i! @7 ]: ~. W# ?3 g }
v9 |. U- n& F1 s V5 _1 |
8 O8 h D% I; g7 C public Activity activateIn(Swarm context) {& F1 B& Z( s# n9 ?6 w
super.activateIn(context);
# ?1 o3 S( o6 p" e schedule.activateIn(this);( P0 f% N" ?4 ~" I1 V4 @6 E
return getActivity();- ~ h# f- R% @% R5 u4 ^: u
}0 e! C! F7 A7 [% c2 G
! U) }, A0 A2 T, b7 P) k$ a
public static void main(String[] args) {
" l J; {2 J9 r% @7 g% s* a5 y$ h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' ] g* |0 ~# |+ A1 Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 |4 n6 m3 {, H* j
swarms.buildObjects();! b/ w5 V9 L3 ?# ~( Y. ~& y! L
swarms.buildActions();
& M, T: ^; e [: z/ e swarms.activateIn(null).run();1 {" u ^8 y: e2 q/ w
}% ^2 [& }# r) u4 O$ q" p/ U9 V
& \( \0 g# }; t* j} |
|