|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 V1 c' t+ a* m9 {* X
3 L" L/ w) D7 T9 b0 I5 b' \* w; |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& _( F) c5 F+ T) M4 o- L* x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ _: n9 @: }0 h2 c0 uswarm.SignatureNotFoundException
: u( D* i4 V/ s$ q# k' Z7 G' t' z at swarm.Selector.<init>(Selector.java:76)
/ B M I7 \, s+ \ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% P" o. M7 D& k7 P2 u at ActionGroupDemo.main(ActionGroupDemo.java:67)$ j+ V1 K9 u' ~8 n1 ~
7 t5 Y& x1 F7 G/ X* d. O8 ]( |
) J) b% f: m8 a. A. n
import swarm.objectbase.SwarmImpl;. `; Y9 y) E; o) o
import swarm.objectbase.Swarm;
0 _8 o) `( |6 ^import swarm.activity.ScheduleImpl;+ I) Y/ Q8 U3 \& C: S
import swarm.activity.Activity;$ H R! A Z' h4 s+ D
import swarm.activity.ActionGroupImpl;4 y% i$ l! v$ o8 \' b
import swarm.collections.ListImpl;
. E4 ?9 [" s8 Vimport swarm.defobj.Zone; ( k5 V# p7 v" b5 q4 E, v9 l6 a
import swarm.Globals;
6 C- z7 Y: K3 `: a8 E9 `import swarm.Selector;7 w- S$ C# r& Q0 r" X" v' u
import swarm.activity.ActionGroup; b' X( Q4 l: K& f. E
class Agent {
8 U$ L5 s; Z, }. M char id;" M9 d* o- p& B6 u- W# N( C! y
1 h4 U) s/ @# @ Agent(char id) {0 I; L+ P- J7 I/ x, {
this.id = id;
?+ F/ W1 M, `4 z/ I }8 H/ @# T7 F$ V; r0 @* W! Q
/ D1 f: @ @- F9 Z0 Q public void agentStep() {! b* S1 s; t# ~8 d
System.out.println(id + ":" + Globals.env.getCurrentTime());% Z M( Z4 t$ U5 _: ^4 g: c' U
}
5 N1 S7 h- m0 j: I}
4 w3 \, l- E) _
. t( g- {3 |! Q. T/ b- Npublic class ActionGroupDemo extends SwarmImpl {; W/ c: O$ j7 d+ x. a/ L
ScheduleImpl schedule;; G1 y% A7 w* t6 J6 I- G N
ActionGroupImpl actionGroup;
5 |8 L, Q/ D. j/ s4 i! c ListImpl list;
4 T) t0 ?' a- ^% i, Z char Id = 'a';4 |. M9 h( C4 T4 S* x$ W
, k0 J7 N6 d9 O& ^1 f! l3 W
ActionGroupDemo(Zone aZone) {. _) U; [5 g$ f o) f' s# M
super(aZone);
- E/ g: K6 V( v8 |4 X' Q3 e list = new ListImpl(aZone);
" h+ a7 b% U$ Y- ~2 B' ?# W$ w swarmSetp();+ ]5 O+ @/ \2 R; |
actionGroup = new ActionGroupImpl(aZone);
. U8 E. }( q! P+ p% \1 [# l schedule = new ScheduleImpl(aZone);, B M; ] F2 R, }! Z/ e
try {9 C! ^- S( x' v8 c* o
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 ~1 Y$ O( h k% W; b8 N/ U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 ]1 _- S! b) N
t) o3 A. n% k' r# J9 e% B( i
actionGroup.createActionForEach$message(list, agentSel);
$ I1 ~& Z- ]$ ]$ N actionGroup.createActionTo$message(this, swarmSel);* S- Y# t% ~: B- ]: A
schedule.at$createAction(0, actionGroup);
; w/ t& E7 j. i schedule.at$createAction(1, actionGroup);
- T2 N! T- \' d6 ~ i# n schedule.at$createAction(2, actionGroup);+ j" S5 ~" `* F8 ]/ m# D
+ u6 ]5 c8 @2 Q3 v! C
} catch (Exception e) {
" P) V! b) c! E( t e.printStackTrace(System.err);+ F+ r# D1 C! t% k, b8 L
//System.out.println(e);
3 i1 B- [1 W- `2 q' ^ System.exit(1);
' K9 Q' x' {; q& G! d }' B/ _0 j& E+ K, L3 ]9 v G
# o1 I" _! J* z# _* \
7 h. g$ `( C9 V9 [5 U
}
- J8 e; P D( O
+ b7 s5 l/ v( q" w private void swarmSetp() {) B \0 J- n$ I1 h1 p, ^: ?
list.addLast(new Agent(Id));
; ~% w8 t' K2 t0 x- {. O2 c4 a* } Id++;1 D7 Y6 e. w# [2 t" G. s
}
+ k7 ]9 _, X4 T/ i J: a+ F, Z9 a9 D6 v7 B, N
public Activity activateIn(Swarm context) {
- o' j4 U: X% I7 T- J1 Y2 U5 o1 z super.activateIn(context);
. t- w# B+ W# \ schedule.activateIn(this);: Q, \. o) D# L7 Y4 v+ H
return getActivity();
' c+ ~+ i0 C# @9 J# H5 j5 A }1 X0 C! M+ [. U% L+ f9 T T
1 K2 H; _8 g( P: H9 @) O public static void main(String[] args) {
" C1 ?5 H% U6 D* X* ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ n0 ]* x, i: I6 g8 Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' U& L* g# M/ y4 i- i2 r, v0 {
swarms.buildObjects();2 ]8 H# t5 a) x( q
swarms.buildActions();) O1 z* N* p2 n$ w
swarms.activateIn(null).run();- c# w r& t1 f3 Z9 b
}
. c' z& b4 | Q* W2 s% }$ f4 X# b# c/ ?
} |
|