|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . q- {1 E5 H, n! P7 x; j5 d
, C7 n9 [: R3 x# |% G% ]+ v1 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" G; ^: s8 M! M0 C; L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' ]/ X- Y5 ?' A4 C1 |
swarm.SignatureNotFoundException ]( ?) q0 v5 d5 T+ k" q0 Q
at swarm.Selector.<init>(Selector.java:76)
" i/ D% h+ c/ W! N9 y/ X( p at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% w7 h# O# W8 i8 C at ActionGroupDemo.main(ActionGroupDemo.java:67)
( o/ B4 h- N( Z: I0 `- R
: w7 n+ n8 ~( G) c) f+ O- U. f5 k8 ^1 s& ?! S; B$ J' A
import swarm.objectbase.SwarmImpl;
3 O2 I( q2 e1 |5 G, N6 x& r8 g9 ^import swarm.objectbase.Swarm;
$ a& G- j0 Z: e; d8 t* Eimport swarm.activity.ScheduleImpl;
; f( d1 l* V' g" T8 Z# v: himport swarm.activity.Activity;' p# P. Z6 m( S
import swarm.activity.ActionGroupImpl;4 t! c j9 s2 N
import swarm.collections.ListImpl;
+ h5 Y, \3 @$ q+ [( s3 [ P& ]import swarm.defobj.Zone; 1 u( W4 |' L7 ]6 w5 \+ g
import swarm.Globals;: m2 t4 B' _, Y5 Q# K# U4 |
import swarm.Selector;
. s) Y3 W5 Z4 S" X7 O6 f0 Yimport swarm.activity.ActionGroup; 4 u) @: ?; _3 b4 r0 S% B- f1 V/ y
class Agent {/ ]9 B* Z' B+ W3 l/ ]
char id;8 d; J. F! A( Y2 Z9 ?( Q- \! O
1 u& S$ q$ `3 _: z* L4 P! a* f5 X Agent(char id) {
# m& H2 Z/ t& i) t1 E' h9 ~ this.id = id;* Y2 k( }% X( G- G7 X. T
}( y" `' i1 D$ I# _' |3 h% P& f
3 |: p4 V) w( h+ Q: r! S: o public void agentStep() {
- n' W6 B, U, B4 I6 H System.out.println(id + ":" + Globals.env.getCurrentTime());3 ?6 [& \3 i# _$ U% m6 a
}
4 O& t# r5 `. p. e}& M$ ]0 N& I2 L% \3 o/ y9 S
% E C/ R/ X) S/ h4 gpublic class ActionGroupDemo extends SwarmImpl { G4 S% ^4 V" {; n* W
ScheduleImpl schedule;
9 q: G: D" P/ h/ K9 |! r ActionGroupImpl actionGroup;
5 ?) ~ X5 A0 d0 q/ y# e ListImpl list;
6 F& ~" `1 N* l/ r4 m2 K char Id = 'a';; ^5 C0 G6 Q; u+ X8 Q& P
) m3 [# |: r6 x% C8 ] ActionGroupDemo(Zone aZone) {/ h6 @' A) l/ R2 x
super(aZone);" V$ g3 [) b+ d8 e3 d
list = new ListImpl(aZone);
: P2 O4 y4 o' o8 q$ E$ T, K1 d swarmSetp();2 {5 { K* M0 k
actionGroup = new ActionGroupImpl(aZone);3 z! i$ a. B' B
schedule = new ScheduleImpl(aZone);
+ V3 [; O* x2 r5 f3 r9 t/ N1 a, M try {
, ]- g- Y! d# Y3 M* R Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 Z$ n) I9 P# e+ A L9 U; C Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% O& v0 x; Y/ X/ \ - ?& O0 Q3 q) }" u
actionGroup.createActionForEach$message(list, agentSel);
# ?6 r3 J' D" u9 U actionGroup.createActionTo$message(this, swarmSel);7 U, l- {0 N8 d9 ~ [' f
schedule.at$createAction(0, actionGroup); M) g& n6 Y( o3 T0 j
schedule.at$createAction(1, actionGroup);* r( s: D/ Q0 ?$ B& ^8 u3 B) T
schedule.at$createAction(2, actionGroup);
$ P! {; A; ?4 N
" ]; {; Y6 D/ X$ ]0 s4 U0 [$ l7 \ } catch (Exception e) {& m" S' s' b& d _
e.printStackTrace(System.err);
. C2 N) n& F& e2 g //System.out.println(e);
. Y$ F2 D1 |8 r System.exit(1);
4 \ h3 b) O: w# P6 b8 T* z }
0 V# ^9 ^/ n0 z+ ^6 G a) [; o$ y G
4 ]9 \) x/ `9 V7 C1 ?3 R5 ~) N }
, i( S& S1 M0 K* Y7 N& D+ u: K% X+ q. ~6 }9 O. h! J
private void swarmSetp() {
1 ]0 F ~8 e+ O$ q+ d s. o/ N list.addLast(new Agent(Id));
5 Y6 B, Y9 d7 o$ S# u6 P5 ~ Id++;% I2 ]6 k1 T N' K
}. Q/ X" q5 Q j |: i4 l
" e& S4 n4 T1 ~- s: c, Z7 @
public Activity activateIn(Swarm context) {
& M9 A0 O; G8 N super.activateIn(context);5 Q3 H: r" P% e% s% F
schedule.activateIn(this);
0 e2 u4 u1 N/ ]" }, F4 i return getActivity();
* {3 \3 ?) h: l" P( f% j% i, y }1 [) T/ \1 L, U# }; Y3 n
1 l7 A1 [) k* x+ t3 B% ?& G6 Z public static void main(String[] args) {* K5 S$ X- |0 k; N1 D6 S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- `' e6 j" B' K0 Y, z; |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 @8 X/ ]$ v/ G8 [3 R swarms.buildObjects();; w* \/ o0 G/ P& b: ^% j
swarms.buildActions();! V+ G6 h5 p* Y7 Q% _3 n
swarms.activateIn(null).run();
$ s+ a1 N4 v6 \# B8 a }% _/ [! w) K5 h1 x7 ]
* f+ w' J; v* {} |
|