|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 t% m: k* v# y. r: Q: W c3 `- y5 p. d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( z2 z) x" ~7 [5 y3 d# H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 o V# f% g7 l+ b3 Y2 ^6 ~' Z
swarm.SignatureNotFoundException
% Q+ k. T( R* L at swarm.Selector.<init>(Selector.java:76)- K) [ V4 a! b
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- M! M" |0 o' ?# J0 ^- ^
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; }! z6 q4 ?% l( `: \1 p# q8 l* x- B/ } G1 y9 }6 q# D" ^
3 g1 U, ~6 ?0 I( G" ~+ `8 z
import swarm.objectbase.SwarmImpl;
5 y8 Z$ P- W* e$ A$ m; \import swarm.objectbase.Swarm;$ T: O. N7 Y1 a8 V* S/ v$ g
import swarm.activity.ScheduleImpl;
! w$ v7 I9 ^6 m; i; O6 rimport swarm.activity.Activity;& E8 m6 Q* o0 M+ z! F7 h
import swarm.activity.ActionGroupImpl;
0 A+ M$ M; h; J% a! x' |import swarm.collections.ListImpl;! [' V& P0 `8 m! u
import swarm.defobj.Zone;
, Y$ w6 L1 M! Z' h- J6 A2 V/ Oimport swarm.Globals;
; N. }: @* y3 A5 `$ V/ j. nimport swarm.Selector;
# `1 n% \! @; \+ [4 W; i7 @( Uimport swarm.activity.ActionGroup;
% `6 L. E$ D, q! l/ c* iclass Agent {
1 R1 S- Z/ g6 m, D9 p# U; r char id;
( ?6 j2 o# n: f$ J, w0 i/ P0 F
+ _# }' }' P6 c3 O/ ` X Agent(char id) {; @) L: D: \+ J! B o
this.id = id;- h, {" F# N$ Y% w: ?" ?* I
}
9 q) k7 K8 P) f
/ j; C( R8 \ |8 ]1 \. A4 L- ?8 n3 f6 y public void agentStep() {
. |$ U: d5 k. c System.out.println(id + ":" + Globals.env.getCurrentTime());
4 e/ X1 C1 f, ^# u/ I3 I }2 e0 X# d& b' g+ [5 |2 t, _
}+ x5 F- R# F0 M8 X t
# s5 l2 M, T2 T/ p( W+ E
public class ActionGroupDemo extends SwarmImpl {+ k' o% B/ b1 G$ b" I4 G
ScheduleImpl schedule;
* c& ~2 F% f* o1 `) ?; } ActionGroupImpl actionGroup;9 c" @' g2 K. z1 H& y7 c
ListImpl list;
& _, O" ~2 X$ z char Id = 'a';
/ K2 z$ E6 N7 k! x+ B
7 F8 ~. D& ]$ c1 g ActionGroupDemo(Zone aZone) {
* H+ r r' P/ _: {/ L+ H6 c super(aZone);
1 w8 H" j3 _6 F& M list = new ListImpl(aZone);9 o. j9 }* I) A6 Z! ], o
swarmSetp();
$ F8 L' M ], E' H" v actionGroup = new ActionGroupImpl(aZone);
- |' x' e% X8 o0 K/ }+ `* z schedule = new ScheduleImpl(aZone);/ P; W5 W& V( A
try {7 l9 z- H a' o, s- v n( p
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ d, O+ f+ R5 {* s( n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, J% p1 q( ? l3 `0 E7 a' j
, q+ w: x9 F1 R. G2 D
actionGroup.createActionForEach$message(list, agentSel);
. r2 O/ n, F6 Q- z* B actionGroup.createActionTo$message(this, swarmSel);; C. ?+ x% i3 |! r
schedule.at$createAction(0, actionGroup);
& r% |. ?+ `8 `; k, ~+ r schedule.at$createAction(1, actionGroup);
: J8 P. k5 y, T! x6 @( t( n' v3 Y. I! R schedule.at$createAction(2, actionGroup);0 x8 ^! Z, g# O) O9 m9 a" c) T6 E# q
2 O0 d# _3 O; e' X1 d% T } catch (Exception e) {
4 X- @. N, b8 [* `+ `( D e.printStackTrace(System.err);
+ R$ n j+ `/ t //System.out.println(e);
. |: F2 W% o/ Y8 |. u System.exit(1);
+ B0 p9 T) B' F' m }7 `' f# K g% L& m4 c
* ]! [# U g; v/ M" z
7 ]/ w$ b/ [* H8 n, B2 s
}
' W# `6 I4 M$ y M* _
: l* _- S/ Z* I) r private void swarmSetp() {
- J8 I3 t7 k% |+ s2 i n. b& ^ list.addLast(new Agent(Id));
, f( G, A6 J1 n5 k Id++;3 {9 z: C! n; O" p
}
6 X3 i3 } c& A! n* I! Y' J) p+ _" Y) t3 _6 u9 J- x
public Activity activateIn(Swarm context) {
3 w! Y" a" Q) l5 ~: |1 |0 b3 \ super.activateIn(context);
$ f( Q/ C$ D8 K8 ~ schedule.activateIn(this);: d; D; i4 i4 D$ Q
return getActivity();- G; m- e( J+ }. g
}
V- M% b' o5 c0 Q/ c/ C
/ G- g1 \. L' U9 H' z0 `7 \2 a public static void main(String[] args) {7 E8 ]9 M3 L4 p6 o+ A6 |1 _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 n1 o; _9 f( l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% u/ C+ o' T; p& H& }; B swarms.buildObjects();, A0 }# P+ G4 j. p! o5 E2 i" U. C
swarms.buildActions();
* U( z% L# C! c; \/ E$ m0 W swarms.activateIn(null).run();
6 O+ T( @( k' I }& H0 N& _' q, H# c+ ^
1 V' g0 o# R; B: V} |
|