|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J# d, D( S: L" I# X
$ F) W* {8 a4 S j: [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 N. g$ A) G0 ~1 c6 u/ J; c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! Z' M, a4 F( v! C
swarm.SignatureNotFoundException
9 i4 c, q3 b& o- Z) l, \& a at swarm.Selector.<init>(Selector.java:76)
8 G+ J$ y6 m2 u at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 A. ^+ u) g! Q) Y: G& Y' f at ActionGroupDemo.main(ActionGroupDemo.java:67)! @' [8 ?0 a% Z. R
5 M- x7 K/ q6 t, `, |; M9 V, | t* y
6 d0 O: h# B' z F/ Cimport swarm.objectbase.SwarmImpl;
+ C" X! B9 r. _& j& oimport swarm.objectbase.Swarm;
9 [0 z% W, E ~4 C( o: P( Vimport swarm.activity.ScheduleImpl;, Z; t3 y, x7 c4 H# }6 K6 j* Z
import swarm.activity.Activity;
4 j5 t0 `7 T% Z# x) qimport swarm.activity.ActionGroupImpl;+ k7 c/ B6 J7 }+ l" Z
import swarm.collections.ListImpl;) y* c8 t9 E( a8 B
import swarm.defobj.Zone; 4 | i0 h- d4 A3 `( n6 p% e
import swarm.Globals;$ c9 M( @3 {9 n0 R& m7 H
import swarm.Selector;/ f, x |6 i! J: I' i/ {
import swarm.activity.ActionGroup; 1 F: T: ~2 C# u' l, i
class Agent {
$ z+ \9 q6 J- |1 v* g' r t$ N char id;
3 U% O' ^+ J5 I: J% F; U) O' R% [/ v& F
Agent(char id) {
: ?) Z, F, E1 ~; R$ j this.id = id;
4 {: f) o2 A3 z2 H% A) e# B }4 f7 Y: R1 V# l- O! \0 ]" W! d
- s! y4 m" I" m public void agentStep() {- {6 [1 \5 J2 h) S$ [: i3 @: ? L
System.out.println(id + ":" + Globals.env.getCurrentTime());
! E* w3 [' M9 ^- D g% B }
) t7 F+ s- ^' L$ B K% q7 {}
, |7 ], S% l. r; A
) D8 z, X7 i2 |/ G7 L; i" `public class ActionGroupDemo extends SwarmImpl {
. v+ u0 _! j; g o/ f ScheduleImpl schedule;
( |" N" S; N4 z w' i0 l% _' S ActionGroupImpl actionGroup;$ u* i' F/ }% Q8 X+ j6 q, N8 x
ListImpl list;1 N* R. t- O, }
char Id = 'a';
' x7 Q6 I- G/ w& E" W6 k: z* Z0 ^! P. f! T! k, i; _9 v
ActionGroupDemo(Zone aZone) {
& {: h% q/ y8 R% @ k& { super(aZone);
6 W7 e( i# J$ P& i( D list = new ListImpl(aZone);
$ K+ z C! c$ t( v+ Q% `: l swarmSetp();
, J0 i6 f8 R$ I# e% M( ^ actionGroup = new ActionGroupImpl(aZone);
6 e! S1 e! X5 Q* E: E schedule = new ScheduleImpl(aZone);
# w6 B- x4 X6 G+ W. P try {$ O2 }) e/ o3 {; q; w1 \
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 h$ @4 W1 k% r. R+ j
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ]! B7 T4 w% H" m6 _ 4 @7 B& J5 r4 N2 g
actionGroup.createActionForEach$message(list, agentSel);
0 m! ]4 i8 r5 Z actionGroup.createActionTo$message(this, swarmSel);
3 C, [' d/ J( k/ s2 x schedule.at$createAction(0, actionGroup);/ h# T5 }( u; o/ V
schedule.at$createAction(1, actionGroup);/ H- t* m3 h+ W
schedule.at$createAction(2, actionGroup);( c" I/ b& x) _& |+ j
$ Q/ M( J- z2 a; S0 O* d
} catch (Exception e) {
( C* N! {. l9 C6 e2 o. N! w e.printStackTrace(System.err);
5 i) O& H( C! n //System.out.println(e);
+ s& X, V& `$ w$ Y9 o! I6 J. S System.exit(1);& ? O8 v4 {+ ?% F" \5 R
}4 _( \- [9 c' ~+ w
" F* p9 @. }, t
. g; J( c# \! D) a5 a% ~
}
7 v- D5 n- b. A" X& s: [4 ?& u% {: ~# O
private void swarmSetp() {
( l/ o$ }9 Z U) Q1 P6 N list.addLast(new Agent(Id));
: R6 Z C$ K/ E2 a Id++;
1 x. M% j+ X/ h }
9 z. n( }% h8 O8 M; p9 p# P$ U
% G1 O- A) S1 ?/ z/ N public Activity activateIn(Swarm context) {1 `( N8 h! n3 k5 \
super.activateIn(context);0 Y7 y8 z8 o ?7 y; g
schedule.activateIn(this);8 Z! M: |, p1 L' z' ]
return getActivity();( N# m$ V- @4 [, d% ~
}
/ W+ Q v& X; k
2 F5 o# c! x9 U/ a9 O2 B public static void main(String[] args) {
3 H5 n. O) T" f C* m4 O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 M4 H+ _$ ?6 [4 H( r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( M4 i% }, V5 ] g# n" u6 R swarms.buildObjects();
" x% Z3 z- _* `: p swarms.buildActions();
3 m. d# w4 G+ C- n5 g9 {) ^ swarms.activateIn(null).run();/ h/ S0 X* N! t8 b( i6 y8 y
}
/ Z }2 h! ?# k! ^" p8 X, y6 G9 k; f# O0 Y- i% K! a# r" T
} |
|