|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " `. \1 W; s5 b
8 b( x* H0 V% k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) d5 Q6 X+ x/ E o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- e9 \ \; o/ E
swarm.SignatureNotFoundException
! N+ |0 [% \* s# B1 `0 {0 x at swarm.Selector.<init>(Selector.java:76)
$ b! r$ D) |, U& r$ Z3 z( t at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 z4 B4 M; H( [- F; N! B at ActionGroupDemo.main(ActionGroupDemo.java:67)
: Q/ Y4 s) g0 i1 |5 ] U1 `! R7 n, z9 ]2 [( _
! z/ U- j: {! w1 _' s+ l D }% Z
import swarm.objectbase.SwarmImpl;1 U- N3 B* k( C: [
import swarm.objectbase.Swarm;9 j5 P0 ? `" L
import swarm.activity.ScheduleImpl;- d6 r6 C8 N y# ~8 h
import swarm.activity.Activity;
" G! A/ R% v8 q4 ]4 @import swarm.activity.ActionGroupImpl;2 I: F0 Z2 j' E' S# y* Z3 n! Y2 S
import swarm.collections.ListImpl;4 k' Z$ r" W. |8 r
import swarm.defobj.Zone;
% ~) l8 g" p! V. }2 pimport swarm.Globals;+ a7 f" {7 m" S! h, R
import swarm.Selector;! f3 s2 B8 s) I: ]4 T4 o: K- {
import swarm.activity.ActionGroup; % g0 }& M% a! w: P. v% n* d! r& f
class Agent {
% w+ ]/ R' V% t4 n3 f0 E5 U; r \ char id;3 {- E8 ^' o/ ]
& s- R9 v" U: @
Agent(char id) {
8 q, X: z. M2 Y I' c this.id = id;
* q; D, @ h. O0 p' O }# E ? G5 y9 k. ?; F% H
s( l: {( O- D* ]$ E public void agentStep() {! N; b* r: v t9 O+ l. X
System.out.println(id + ":" + Globals.env.getCurrentTime());! W0 I; q& k' G
}
- X8 a' s( X' G}
, r8 D3 ]" U; m8 S) u) o8 W; `. ^4 V* a
public class ActionGroupDemo extends SwarmImpl {2 K) B/ `9 ` I. i) G+ K! b: I. t+ a
ScheduleImpl schedule;' x/ X' z& O$ V+ O+ t7 G
ActionGroupImpl actionGroup;# y p9 N9 h% a* o
ListImpl list;+ _& y% T) J4 i7 Q
char Id = 'a';2 v, R8 x& K0 s" t7 j& c6 s# D
! T$ |, j+ B2 E6 c" n ActionGroupDemo(Zone aZone) {
' O- M: Q5 t0 j6 z% m super(aZone);
; a+ ]# h1 z6 E$ R list = new ListImpl(aZone);" L* i& s/ ?9 t+ j6 l2 q* D
swarmSetp();
, T2 }8 s7 v& m5 P actionGroup = new ActionGroupImpl(aZone);
: @0 X/ f: x# c, Z0 p5 [$ o schedule = new ScheduleImpl(aZone);6 S) ^/ Q' g. s2 t
try {
9 M9 V$ L: L6 S; E/ v% y% p* Q$ c Selector agentSel = new Selector(Agent.class, "agentStep", false);6 k8 o! }+ |7 o" f8 i3 S2 Q, m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 c$ a+ L- m/ v: D0 p4 V5 l
( z, F( ?; }' H; k0 R% }; U. M actionGroup.createActionForEach$message(list, agentSel);5 }/ G8 W1 _5 h
actionGroup.createActionTo$message(this, swarmSel);) ]/ g# k7 x1 X1 x5 w; `9 \
schedule.at$createAction(0, actionGroup);
) f+ K' e+ D5 W3 ]: @& h schedule.at$createAction(1, actionGroup);
" t) C8 L, |# p) _/ }! F! v) a schedule.at$createAction(2, actionGroup);
( B9 @. K- @# I: p; H; i# E
- C3 F# s! g: B- g1 j: _ } catch (Exception e) {
! v3 O7 G% I5 H( C/ d e.printStackTrace(System.err);- j' k, P& d6 I7 E( a
//System.out.println(e);% _- d! f3 H- g% @
System.exit(1);
Q- ?1 }; v3 e: g0 v4 t: ~ G5 I }3 B7 t2 Z7 Z! N6 W
3 k( p8 W- U% Q ^- E' Y Y+ c+ f
}# t. z- u( Q8 ~3 G1 a6 e
0 y0 a( e7 n( b
private void swarmSetp() {
% W. b: x7 V' F& R, ?6 u list.addLast(new Agent(Id));
8 ]5 O% m* B" s6 K2 n1 A7 M Id++;$ m5 t; M1 C7 g# u
}
% t t: \2 k& L7 Z% r$ W/ X7 ]4 Z- E! ]9 s3 ~1 {* ?( y
public Activity activateIn(Swarm context) {
0 c. M6 J6 [. o* ]$ k8 c) r/ K3 w super.activateIn(context);! k. B. w4 v: `$ m5 N n
schedule.activateIn(this);
3 v% d m3 N3 [5 B9 Y, x) }; u return getActivity();
, g. _3 ~5 N$ i% |2 E" I8 D }( L7 w0 |% |; b$ d. x" V' i
; j! y( [9 G% S* R7 G/ G
public static void main(String[] args) {8 o! I( U0 A" k# f. @- k" I
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 E3 h" T& ~3 e9 x; f K5 D& U Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 I! B4 R* j4 R/ G; H swarms.buildObjects(); v' Z! k! n! l
swarms.buildActions();
! c. U7 v$ [ h swarms.activateIn(null).run();$ B. ]- z1 v8 i* J% O
}
6 x& f+ _( v7 @2 q* z
+ H1 t# ]: y1 Q+ N# q6 H} |
|