|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( o. u: g5 {' K: S( Z4 L! W
4 j2 R* C$ U! Q p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 e) X* X! ~8 }) T3 k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# M; N9 l* d- Y( Q: M) v
swarm.SignatureNotFoundException
8 N! A8 A" f, Q! _! S2 u at swarm.Selector.<init>(Selector.java:76)
1 ^0 Y- j M( o. Q" c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 V- T$ Q& I8 F. V, J! c: U at ActionGroupDemo.main(ActionGroupDemo.java:67)
! E' b& k8 C# z% u ^3 b* x& y+ O
9 x9 y, j" B3 `+ I
5 g d+ Q4 Z0 s: _- f9 Bimport swarm.objectbase.SwarmImpl;
' s1 @% E( t1 O( B, gimport swarm.objectbase.Swarm;5 _1 A) F K# x, u5 ^
import swarm.activity.ScheduleImpl;
7 q. A: k+ @. i) \import swarm.activity.Activity;
" ~6 ^: n, Q* v) Iimport swarm.activity.ActionGroupImpl;- q+ w7 P2 r1 V+ ]4 d1 N
import swarm.collections.ListImpl;
' C* n, K8 |7 {9 Simport swarm.defobj.Zone; + _. |% N( j. q8 q
import swarm.Globals;
) R# r: X6 c5 ?0 iimport swarm.Selector;- j V: S4 q; b* b) v8 D- i c" d" x
import swarm.activity.ActionGroup;
! T% S2 Z: b3 {: z. D; Fclass Agent {
{# J! J Q7 t5 i( L char id;) S" K$ h1 d1 ?* r9 {. I ]0 K( v4 M
# B: }3 {4 y% m3 p( G8 u Agent(char id) {, _! {% m: Q- ?5 J: Q( x2 d
this.id = id;: G0 X8 w* q" A% f1 o
}4 B k. g( A+ k* x+ W
, M/ [. t/ J: M$ p8 i" U public void agentStep() {
7 R6 C2 l1 r4 K" v U6 ? System.out.println(id + ":" + Globals.env.getCurrentTime());/ y5 q3 O! A% ]
}' o8 R F# q8 \
}
8 i3 I3 h# Y5 ^# l! _
2 ?% q' D/ ~" o- @2 `# ?$ Hpublic class ActionGroupDemo extends SwarmImpl {
8 X$ _' l( D8 n, |' @, T ScheduleImpl schedule;% l0 L3 `' }* L0 J( I) n
ActionGroupImpl actionGroup;
6 w, c7 u; o* _, g W ListImpl list;
( p9 i% [! B/ ?& q9 I& H char Id = 'a';
8 c( Q7 B* B3 c! y' C* _5 I7 _
" L/ F/ U3 o0 N" V ActionGroupDemo(Zone aZone) {
4 [6 k8 R6 |6 ^ super(aZone);. W0 J! i$ i/ t; }7 M" ]
list = new ListImpl(aZone);
5 D7 b5 \8 ^8 P( m3 H5 B" D swarmSetp();# r1 W7 l9 x( z7 M* r2 p/ }
actionGroup = new ActionGroupImpl(aZone);
4 ]- q" Q4 ~2 [$ o schedule = new ScheduleImpl(aZone);3 A8 I& J# g7 x1 h' ?9 U* k
try {
+ J6 L4 O1 h$ V6 a. P Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 k B; T9 ]# o' ^/ v# }: ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) C' h5 X% r6 E/ n# p6 \+ J
6 c# G9 e% V8 A6 T: N X1 L
actionGroup.createActionForEach$message(list, agentSel);) T$ U3 M/ k1 f" w
actionGroup.createActionTo$message(this, swarmSel);
6 z4 B& A% Q- e6 }$ ]' v: o0 z schedule.at$createAction(0, actionGroup);( k9 a- G; i$ f D' i, Y
schedule.at$createAction(1, actionGroup);8 H0 x7 s% p" v* q; s( O
schedule.at$createAction(2, actionGroup);# I0 s1 G `/ r+ M" b- T- X) k
3 G* O5 t" ]; J h1 Y3 y" ~ } catch (Exception e) {' D- ]. E& N7 e" U$ x
e.printStackTrace(System.err);
) t2 e3 u6 y: w+ y( t! u //System.out.println(e);* `9 H b( a" R9 n( {# E8 [' J
System.exit(1);( [7 N' Z+ @+ L
}
5 s( H9 d8 i9 _' R3 M) Z. E- h5 {$ T; G# w, ]
! [0 n+ T1 {! n: v, B/ c. t }9 u# |( k1 P9 I3 v3 r
( j* P7 q; @, ~& }8 s! x) K! w
private void swarmSetp() {+ x, @' k7 u2 k( r% b5 U' q
list.addLast(new Agent(Id));
2 e# M* D" F' W* G) a$ m. i Id++;
7 [; h/ L7 T8 a& F }- e' O& g- v. v7 N
# {: f8 F% G- u6 s' Y1 g/ q public Activity activateIn(Swarm context) {9 X# d0 u" `# ^$ ]
super.activateIn(context);* M, b' z5 R4 d) f3 F
schedule.activateIn(this);
1 }2 y. B2 i1 [+ {. l return getActivity();2 V; k# x' d6 R5 r
}. G7 l- ~3 ~& r7 l$ j
' A# t- w' l r$ G% T
public static void main(String[] args) {. v2 Y4 }8 y, i% F+ _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 _, H6 ~( t9 e; I7 I1 u3 H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ ?& S+ ?* Q1 P$ `; r swarms.buildObjects();
4 b6 W# c% |! R( L( S swarms.buildActions();$ f% k" L% d; o* }2 Q
swarms.activateIn(null).run();
9 d5 B2 \% G/ K; x }! u2 [0 K9 U) S. U: v+ X; R
3 V# T) v! l, o' O& M( X4 `, T} |
|