|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 l( w4 ~# _, p9 l( j3 S
7 D# H, n; o7 K L7 V7 Q! w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ [% A* {2 L s) O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 q/ ^/ }. }- @2 _/ C- j
swarm.SignatureNotFoundException( O4 x, F: O9 ^) { X |! G2 u/ M
at swarm.Selector.<init>(Selector.java:76)% M$ b: p7 ]. T4 Q6 T: N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: \8 w, S8 t2 K2 o4 _7 U at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 c& W& y. G: u* y0 d, X) ]; @$ N6 H2 s" k* o( f) Q, t/ d
" P1 c: o- G: p8 P2 ]1 u2 W
import swarm.objectbase.SwarmImpl;/ ?) \+ y9 T; i, }, W) Z
import swarm.objectbase.Swarm;
+ Y3 j/ Q/ N a- W# aimport swarm.activity.ScheduleImpl;
5 }+ N4 \9 S0 K1 Z# Aimport swarm.activity.Activity;
}* j5 s& I) vimport swarm.activity.ActionGroupImpl;( q& ?, c/ E' _- a/ r* @
import swarm.collections.ListImpl;
) A! F, l2 c6 Z5 K$ m0 T* i) p( @import swarm.defobj.Zone;
' p' o/ y" ~6 ]1 e( d, }! ^* Gimport swarm.Globals;0 E, [1 V* L% r" R% a
import swarm.Selector;
" X& g( v5 ^- A% \; p" ^6 n' E' C9 Limport swarm.activity.ActionGroup;
( _8 }# b+ C) `# @" K' S# X2 cclass Agent {' B! B. v) L j
char id;& E& J% c) M; k$ A; ?2 ^2 ?% }' E1 M
+ Y R, ?5 {1 y8 B" r Agent(char id) {
7 v v q0 h! p. |0 U# S, K8 H$ X6 s; s this.id = id;( ^( C2 Q+ G5 m1 A; l
}
# w5 G0 a: A7 Y7 |5 \
+ Z# Y5 I/ f, z public void agentStep() {2 J0 E1 q9 W Y5 C+ i# O) l+ H0 J8 y
System.out.println(id + ":" + Globals.env.getCurrentTime());4 \. J7 x6 b0 t
}7 h) A5 x! n1 L8 ?3 E* c
}
8 y3 O! B2 D9 L: n* [% X9 Y4 ]! b: R5 s
public class ActionGroupDemo extends SwarmImpl {
$ j/ W# C6 o4 b8 R- N ScheduleImpl schedule;
- A* U9 h5 R+ B4 i' q2 J7 q ActionGroupImpl actionGroup;
& A4 P3 I/ m. g0 N ListImpl list;- N6 r7 h1 I3 h/ X4 }6 H
char Id = 'a';# X- H; i( h/ o
" K$ u' L5 i! W8 R ActionGroupDemo(Zone aZone) {
; O: ]# ~. P& l. r" w. L$ V6 ^3 r super(aZone);' k2 z7 d* Y* ? f$ k
list = new ListImpl(aZone);* J/ c, ?5 Q* p' v9 B/ [6 F
swarmSetp();( B& l, T- b3 Q6 Z
actionGroup = new ActionGroupImpl(aZone);! m/ t# c$ k' Y' Q" v
schedule = new ScheduleImpl(aZone);! v5 W; d: ?# [ d/ L
try {
1 U; ]. I( n# O1 S Selector agentSel = new Selector(Agent.class, "agentStep", false);* @1 {& W; P* K3 b; v2 h' G; r- c
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& Y$ }( u& V; o; P* _2 _+ N4 l
! _* O; [( P; Z/ ^ ^1 D actionGroup.createActionForEach$message(list, agentSel);
$ }# @; y0 @+ Z- C0 @ actionGroup.createActionTo$message(this, swarmSel);/ O+ w5 S5 a) ~' f$ O5 X
schedule.at$createAction(0, actionGroup);
/ j# f- H" q/ y) G schedule.at$createAction(1, actionGroup);
% W4 R. F% {% J# ~ schedule.at$createAction(2, actionGroup);, s5 G$ K( ?$ X# ?0 ]' i
8 I& a& U' V3 ^0 ]
} catch (Exception e) {$ m. p1 @8 }! c& K$ o1 Q
e.printStackTrace(System.err);- P2 t/ G& q* L9 [
//System.out.println(e);6 z6 E6 n" ^$ U5 [/ E
System.exit(1);1 `* U. x z: o
}0 U# h d) w/ ]# H: m8 U& a
7 M* O J( `! e' `& K
6 g3 ]/ ]( v* w8 c }
+ o* }0 J3 t/ t7 F" e3 s" x0 d* C! R, f8 D
private void swarmSetp() {# h4 i/ ]# D5 y; F# Z6 {' ~) u
list.addLast(new Agent(Id));
/ A1 i- J' E4 }# Z& H7 t Id++;
! J% D: Y5 [1 T, C }
7 {. E; i( L9 U$ w( x" c3 d# y6 N# z3 A
! ^9 C# K; N& M$ m1 I5 S0 w public Activity activateIn(Swarm context) { e# z t0 R0 [& S0 O4 r4 `
super.activateIn(context);
1 I! {5 F# J/ p' s0 k schedule.activateIn(this);' U- T9 c5 m* j9 s9 [
return getActivity();/ h2 c+ m! W8 P6 G4 L$ i) T
}1 C7 b; Y3 Q$ c; h, H
; y8 ]0 K7 x9 ] public static void main(String[] args) {
4 p6 `- n) d7 N0 |, X3 v; b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 i, |/ Z5 E5 ~, q$ I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, L4 H4 Q _2 N) @ swarms.buildObjects();
. q3 n1 v; J. p7 u4 u swarms.buildActions();
5 ]! a9 i/ _5 t' R. f swarms.activateIn(null).run();" Y2 E4 G; k% C& d; E: L5 J) g
}
2 z. a9 n) |- U E- y0 H/ x2 L* t9 s, P1 M0 `$ W4 m
} |
|