|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( I6 r; l9 a' G2 F8 O, _9 O6 q
+ J, ?( i' |6 E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. G6 D% t8 G% d3 m& P+ w% q0 C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., g/ k, C* C+ b# D
swarm.SignatureNotFoundException; j% t# p+ f( }% m" D7 }
at swarm.Selector.<init>(Selector.java:76)
+ t! k2 K0 W+ C0 | at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- A3 \- S" h' s at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 p' M4 t8 O9 w p. h$ i0 e* d @, m% j
* `6 c! H& D6 b
import swarm.objectbase.SwarmImpl;
, K3 ?$ c4 E6 @: n& b" B( m6 gimport swarm.objectbase.Swarm;( N/ \( Q, @* S( k) ^1 @
import swarm.activity.ScheduleImpl;
4 t! x: D/ x3 N/ yimport swarm.activity.Activity;" E. J4 m6 G8 n. ^7 l" Y6 p
import swarm.activity.ActionGroupImpl;
3 i9 D1 Z; x9 Z5 a3 D0 g( M5 v" ]9 @import swarm.collections.ListImpl;- k4 g4 h7 d9 C9 f2 q1 w
import swarm.defobj.Zone;
- ^. w6 Z5 @, a! K+ O u& D. o( @. Zimport swarm.Globals;) [. J, u( G/ R% w
import swarm.Selector;
! }6 _9 o a) n( C; Y" U" f l, A( E. Jimport swarm.activity.ActionGroup; % y0 c* E9 D" u, ?
class Agent {% _ A, [& V1 N8 u$ P# c# C$ r8 ?! r' Q
char id;& Z( @& A1 J9 q
# a; e3 ? u1 z2 B
Agent(char id) {2 j" \% \1 K3 z; @: f: d" y
this.id = id;- B0 o; l$ Q/ V {$ a4 K3 D
}5 m# Q, l- p0 [) [# p3 {5 w
5 |' F9 d! Z3 F- [, F
public void agentStep() {5 J, M* T# J8 k7 K, a
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 P$ t4 V% w$ ~* Y }8 B% z- s) N5 k; u$ h7 }3 d8 a" @
}
+ n: p. ^/ I! ^ d7 r, G; _# ?4 y/ T& d( l1 L6 T5 l. A. U
public class ActionGroupDemo extends SwarmImpl {
$ Y, [, a+ E" ]5 ? ScheduleImpl schedule;0 {# l2 i/ A! r3 u( Z
ActionGroupImpl actionGroup;9 h6 i# J/ i# ^( b/ Q9 w/ y1 i0 v! d
ListImpl list;
4 x( u" p1 q& C1 O$ h0 y6 U char Id = 'a';
" p6 v6 w1 x. h) l! Z+ ~! \) S# J4 @8 R
ActionGroupDemo(Zone aZone) {% q1 q0 ^2 |2 b; O# i
super(aZone);
8 d0 T1 C( Y3 ?% K" I5 \ list = new ListImpl(aZone);
* v" L8 f; f* m& i# N2 v8 C swarmSetp();
! I1 L ?4 W8 z8 b actionGroup = new ActionGroupImpl(aZone);& C5 g& _4 E8 s5 d/ r
schedule = new ScheduleImpl(aZone);' b0 R5 K- x ?* n+ e0 ]9 @
try {& j9 _# X7 \% C4 ]( i+ O' q
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( A9 v, }$ p- K" _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 n% Y0 c+ `9 h $ l: {2 x% E, L0 y% l
actionGroup.createActionForEach$message(list, agentSel);
7 Y# r) W: ]2 Z/ t# T/ z; r: O3 x5 E actionGroup.createActionTo$message(this, swarmSel);
7 \6 }; q0 A& s* `4 ? schedule.at$createAction(0, actionGroup);
- A; g+ ~! w* c) z( X schedule.at$createAction(1, actionGroup);8 M& [, U5 ?$ V& F
schedule.at$createAction(2, actionGroup);/ C0 ~2 c; H4 P% K8 A0 @# u
! h3 {% ]5 X9 B6 f( k6 n* E
} catch (Exception e) {
$ J4 N9 x" E9 n: c7 j8 Q+ i e.printStackTrace(System.err);8 J: I0 P1 c4 H
//System.out.println(e);; Z& q6 h7 M) s. _( w
System.exit(1); R. H/ m4 ~7 X" O& Z
}
; \6 \) p6 L" [& k( H" u. }$ ?
( T7 b9 j9 ~# R% `4 ~4 n" Z' p% I5 q; c
}
; \! i+ P( ?& a1 L7 P0 u
5 i% F2 J4 [; P$ I; s5 p private void swarmSetp() {1 U4 @) [4 v/ ]# p$ x/ g
list.addLast(new Agent(Id));
6 m9 r; {) @9 H9 e* d* z Id++;* c* e# y* B5 S- \# O/ a: n3 e
} ^ f/ u! y; \" u5 X8 Z
7 I+ i6 \$ Y& Z6 k5 F. O# Y public Activity activateIn(Swarm context) {
- v& H! G1 `7 V super.activateIn(context);
/ ? {& o" }. y" d6 J schedule.activateIn(this);
, s! s+ k& c% B" |' o" ]# ^ return getActivity();7 g, V1 K& g0 _0 t. A$ u Q# X
}* R" ?( p/ [2 p5 |8 h8 A- a
1 @8 ?& I9 w6 D public static void main(String[] args) {8 M1 N* k; J+ |: ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. Z$ ?3 n0 U" V! y% W8 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 E6 B& a F5 O- B& u" x4 w
swarms.buildObjects();
$ z N. }0 J( D swarms.buildActions();
6 M* ]7 z1 F% r$ H; o K4 ?: g swarms.activateIn(null).run();
6 X- E0 }, e& a6 J; Z' H8 X+ O }4 s& b9 i* W2 t; n
! B4 R8 u, w" N$ X} |
|