|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ r1 ?; Y# g5 m& g$ F" o
I* t- g) ?* k/ v9 g" ?. C: R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# y$ y( S$ h) J3 s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" T$ V2 G5 c0 u" ], S n. bswarm.SignatureNotFoundException
4 r; {7 s; u+ D9 U' Y at swarm.Selector.<init>(Selector.java:76)- t k$ K0 w* X, C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37). w2 @" u3 N1 u9 R
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, r( W9 e3 d- [/ n5 V; r0 b4 g- d( ~1 e! M
8 ^2 ?( _6 ]3 X5 j+ V' O- ~
import swarm.objectbase.SwarmImpl;
( t; ?' s1 F# s$ yimport swarm.objectbase.Swarm;
2 ?, J9 S2 h) A3 G* H- Himport swarm.activity.ScheduleImpl;' r3 w/ R/ c0 a
import swarm.activity.Activity;
0 t! C2 D/ o1 n- E* vimport swarm.activity.ActionGroupImpl;
0 w7 J; J$ X" U" ?4 Pimport swarm.collections.ListImpl;
" H5 \7 p) l7 r* |import swarm.defobj.Zone;
0 k |) U6 @ p. P0 ^import swarm.Globals;2 m4 s0 X) Z, [4 o, r8 E
import swarm.Selector;
+ P" H' T }$ @5 Q: M4 `$ pimport swarm.activity.ActionGroup;
% Q* @" r0 t. I4 y) T S' [: lclass Agent {0 Z4 v4 r$ T4 D; X0 r( T d, l6 \
char id;
" ?# m S6 d# x, V4 b
1 U2 _5 O$ a# [- Z* k% C1 b1 \ Agent(char id) {. i" i* e1 n/ Q4 V h( O( |9 U
this.id = id;3 P. i. \7 H/ H
}& m( u& b5 K* M/ y0 J7 [+ `; M8 w
- E3 J8 w( G- T! ~+ D
public void agentStep() {) _& @4 L0 X- k
System.out.println(id + ":" + Globals.env.getCurrentTime());; N' o" C4 m# q7 g
}1 r/ \. z7 J# \3 T: n1 I' n* m
}
9 V0 w1 C1 `. B: T- a- z6 Q/ f
* ] |' U( X8 B' ]public class ActionGroupDemo extends SwarmImpl {
5 N# r) ]5 m/ u5 B% I% h0 ^7 Z ScheduleImpl schedule;
! Q9 e) A2 r* m- \- J, C) e$ z ActionGroupImpl actionGroup;( i8 N! j* X! |3 n- c# y
ListImpl list;( h6 } ~3 s0 a
char Id = 'a';
) n# d+ ]/ B( L' T4 Z! y% K+ H3 y' G7 q% L# M) K) X& K
ActionGroupDemo(Zone aZone) {
+ g' |3 ?8 i" u5 @9 P$ n# F super(aZone);; S6 K7 J* x+ G1 O7 V7 y
list = new ListImpl(aZone);. z) [+ B# K, C3 w
swarmSetp();$ y" Y Q) B1 a# z( @8 V& f; N# D
actionGroup = new ActionGroupImpl(aZone);; _9 O: l" m% G- G
schedule = new ScheduleImpl(aZone);; |8 M/ K7 l9 V
try {. I# Q3 S% b! H% |
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 D k7 ^/ u& P+ W( F" T+ K# r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; o" T7 [- a( u+ F u2 I 5 e6 d# k. C; M2 s
actionGroup.createActionForEach$message(list, agentSel);
& E' G4 q* Z% \: D actionGroup.createActionTo$message(this, swarmSel);
- G- L- ]! T n& R& ? k schedule.at$createAction(0, actionGroup);
+ O7 R3 z5 Y- E7 n- r4 v1 o. Y schedule.at$createAction(1, actionGroup);* L# z+ g% K1 m9 a1 z% O# J
schedule.at$createAction(2, actionGroup); I" @: m0 b0 S' \
, a2 d/ _. C5 F& i( d
} catch (Exception e) {+ Q9 c+ ?1 p9 i
e.printStackTrace(System.err);9 _; x4 n$ F. q0 \9 W. {" }
//System.out.println(e);" K3 c. l* W5 p; u# r+ Y" @& U
System.exit(1);. |3 n t3 L5 l3 P; |" c
}. A: q F/ r& n, s, L' W$ l3 S0 p
; X& Q2 d4 s2 O( R, j
9 s F9 u4 W( Z- J8 G
}
n& v$ i: s3 T7 P3 p2 U$ W9 R U* I0 U" e. T) a- @+ w
private void swarmSetp() {
+ g7 G8 ?1 [5 d- \1 s' ]# Z list.addLast(new Agent(Id));
( w4 t `( t! N+ p Id++;8 ^. r* G3 t, O0 x. i T# d
}# J# Z0 S% b- w* @2 t
- o3 j6 |/ m9 s! N public Activity activateIn(Swarm context) {- g7 s" E) T7 h# d8 P- `6 n
super.activateIn(context);
! k `, G- F+ y3 w schedule.activateIn(this);& D! B( G7 e! x3 [4 k
return getActivity();: K! E7 B4 j2 o
}
( P% f; \0 n. Y' L0 R# R( T
& ^' b: {7 t; {2 A k public static void main(String[] args) {0 p8 _, J+ |9 `2 Q- r7 z& _) [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( _* F4 D t! |+ k+ h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 [6 C6 v2 P6 ^& B& `: x" `4 ~ swarms.buildObjects();2 V' ^4 U- z. H" D# v1 F8 N
swarms.buildActions();1 a. E! V+ m4 S) a+ I
swarms.activateIn(null).run();' l4 V6 s+ l6 |9 x. w% `8 }+ P
}2 {6 K: N. e8 ]. }0 H% u( X! d- J" D
: Q" h5 _+ H0 X) r. h1 \
} |
|