|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: `1 j0 D" r0 w/ V7 {0 M
, I* Q( P% t% G# ^2 u! n6 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# X+ |( N6 ]+ M( X& j0 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 s1 e1 C% q1 S% s
swarm.SignatureNotFoundException' ]8 ^" W% u8 x M- R% J
at swarm.Selector.<init>(Selector.java:76) \! D4 Z! P7 N1 W2 m. d& V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 ^. U" T( y* ], \ at ActionGroupDemo.main(ActionGroupDemo.java:67)) q! i; p. k7 t
: K$ M; s# p q2 r5 N/ ]
/ e* ]7 B; z8 \, e7 n4 y- {
import swarm.objectbase.SwarmImpl;
6 U) N' t, m/ W' D3 Cimport swarm.objectbase.Swarm;$ O7 |# c5 u3 Z6 _5 w; a
import swarm.activity.ScheduleImpl;
$ ^' s8 V( z9 O- d7 s1 Bimport swarm.activity.Activity;
( u; j4 W* J4 h% a5 |7 wimport swarm.activity.ActionGroupImpl;- Q C; N% I ^2 o' _. ]; Q
import swarm.collections.ListImpl; \; K6 E O* D2 \1 i* I
import swarm.defobj.Zone;
& L6 K* p. Z9 G6 }( `- ximport swarm.Globals; K' g7 L& _* o' H( k1 A
import swarm.Selector;
% n' P& _8 h# `. }/ L0 W7 zimport swarm.activity.ActionGroup;
2 U, G! g/ p! X3 nclass Agent {. T, |5 W$ F7 ~) T r- ?/ v1 q
char id;* t, K4 S' {4 a& }2 R* l1 B
, F# R2 f) J* G' C8 H5 E Agent(char id) {
8 ~% s; o6 b# \! L$ S' H) R: c this.id = id;
2 X4 T3 @+ E8 T+ F }
5 ~7 D% Z6 S$ g) c P) |
* j( ^3 G* p0 l/ W% [3 [, ^ public void agentStep() {
: k1 T, u$ n* S' ]2 [ System.out.println(id + ":" + Globals.env.getCurrentTime());4 N5 }; W% P: A2 D* k1 f
}3 H9 A" `% }( r: j) `
}- T) i8 X. ~7 G6 C L9 ~2 W1 L
: y' Z+ v3 D4 g( T2 n/ H. tpublic class ActionGroupDemo extends SwarmImpl {9 L3 v8 l! O: P1 X* s2 U+ [ \
ScheduleImpl schedule;
* q9 D& ~. a" J7 }5 f7 l" t ActionGroupImpl actionGroup;$ [( ^; X2 v8 E% L% q
ListImpl list;+ u5 o3 u! h0 y. A$ L2 S6 A- r* |
char Id = 'a';
! z! J& [0 I9 T0 U# K, ^ t) n1 t& W: ^4 h8 _; C1 ]1 g
ActionGroupDemo(Zone aZone) {
! I3 m" u# r# G/ q super(aZone);/ [8 b( \# ~5 M) \2 E7 Q
list = new ListImpl(aZone);$ P$ R- p: Z( H" `* e
swarmSetp();1 w) J* ?+ z. Y0 g" O
actionGroup = new ActionGroupImpl(aZone);
0 l5 K1 f+ e& Z( n$ x' H) R schedule = new ScheduleImpl(aZone);
7 z6 J- v. ~% p! I* O4 L! p9 t# ], k try {3 c$ L! f- p0 U2 J6 a
Selector agentSel = new Selector(Agent.class, "agentStep", false);: A0 {- N8 ?9 o; g! Z7 @- M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ w5 m. T+ t- g: o
. f% X& D% Y1 {! w5 k" I, J
actionGroup.createActionForEach$message(list, agentSel);
" Y' T! o# H* [* F* X actionGroup.createActionTo$message(this, swarmSel);
) E8 P' Z1 v/ O schedule.at$createAction(0, actionGroup);" s8 I& X$ N6 B
schedule.at$createAction(1, actionGroup);5 {' L; D( ?* T9 L* @5 V
schedule.at$createAction(2, actionGroup);
( V2 `3 R' r, v" \3 E' h
' |% o, ?8 v- G! p: ^ } catch (Exception e) {; |" v- S$ J' O/ K+ d$ K
e.printStackTrace(System.err);
6 W# g; S8 B$ A, ` //System.out.println(e);
. ?2 r& E( U% q System.exit(1);
' r @8 M8 F( D+ [ W, F# [& z }
& V Y& F" P. a: M' w% U' e. Y- s9 j+ w7 J# ^* N8 L6 r x+ L6 P
4 e5 `4 d" H# T* _2 A3 ]# M% h& p. z }
8 q9 }% s6 d3 D# D8 `
/ }: g X# I2 u, N! n5 b5 X private void swarmSetp() {
( z J3 j- {+ S( F: ]$ ?/ ~1 Q list.addLast(new Agent(Id));
& j& I0 o3 W6 R Id++;% L! Z* d# z: N+ t
}$ R. E% e& q& a7 I2 n
& C- N5 ]" Y( j* D1 T
public Activity activateIn(Swarm context) {
& y7 S# b8 u# }% d! f0 }$ B super.activateIn(context);! f! h Y( e. m a
schedule.activateIn(this);3 Q, l1 {1 y) Q0 r, g* V
return getActivity();0 p3 h# ?6 F: u* n J
}
& U7 ^# A& t& H5 r0 Q3 E+ z7 X5 U2 H$ O
public static void main(String[] args) {
% K! `0 Q) s. e7 L) ]& A: Q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 }( O, e! U$ A& q4 v7 x
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: Z) j4 ?1 x5 [ G# J
swarms.buildObjects();
* h. _0 J/ u U% y; h- v swarms.buildActions();
: m. N9 t2 O# q3 J* a- }6 u swarms.activateIn(null).run();6 A! {6 d/ S# V |& n
}& b. v6 I! O; R1 c5 d( a
* l' s. |( w; Z. H} |
|