|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # [! d( P0 j2 F: z- |
) a' ~0 ^( W8 d6 c' m8 M& z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; R4 l! m: w. K. m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 n4 ?/ Z/ i8 p1 H% tswarm.SignatureNotFoundException; b% I, ^4 c+ q
at swarm.Selector.<init>(Selector.java:76)
0 y7 g2 ?5 k- G. ~7 m6 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: o6 R1 G {3 l( A C( ~ at ActionGroupDemo.main(ActionGroupDemo.java:67)
, [- t R9 r9 r8 ~ h' R
! U" N! d9 s' W* o u/ Y) x9 E" t) m' g
import swarm.objectbase.SwarmImpl;5 N( O$ V7 n. |! S k5 W
import swarm.objectbase.Swarm;( k) A( E" Q1 B1 {# |4 v
import swarm.activity.ScheduleImpl;5 g( D2 A5 q& d) Z3 _9 I0 M& L
import swarm.activity.Activity;/ o& ?, l' c+ S1 Q5 q4 b
import swarm.activity.ActionGroupImpl;' n0 q) n0 U: S& k; V
import swarm.collections.ListImpl;( t) w+ T2 f1 W
import swarm.defobj.Zone;
" Q/ b& t2 Y* L6 e b5 Eimport swarm.Globals;
. q, k" K4 w; P- @& ~import swarm.Selector;4 S+ k, F) O! ?/ ]6 F0 c
import swarm.activity.ActionGroup;
; n. c$ W/ ^5 R2 R4 s( Yclass Agent {/ w, n& K& T6 S4 g
char id;
4 r3 p- M8 k1 }& y* }# f( }& O+ c- Z, R: V& R* Z! W0 W
Agent(char id) {
$ g% q( f2 J5 h% E; t this.id = id;
9 O3 K2 H) N, Q$ E8 E6 L7 r" x }
* [2 G, I, T; d# R, W* g9 k! {
# d% k) U4 T |$ Q* B! M" M public void agentStep() {5 D7 R/ B+ J4 V
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ T! c: N' ^- M X# c% V- t" `! n3 r }: O& w1 |/ u! v4 {( c/ H
}
: R$ [3 T+ d0 @0 E+ _1 C, |' t$ v9 C( @' y7 K8 X. H
public class ActionGroupDemo extends SwarmImpl {, s6 n" T$ S' W- x: e) I$ C
ScheduleImpl schedule;6 l4 O6 g! t1 t$ H6 y4 a: L8 O" F7 c
ActionGroupImpl actionGroup;
. f. _, f0 y6 u) W" W- s ListImpl list;
- o$ }# {5 i4 K+ w4 b/ S char Id = 'a';
1 S/ H6 o9 g* |. l
8 A; V/ X5 r# R2 M0 d' _) n: e ActionGroupDemo(Zone aZone) {; T1 d" w% f! x! I3 N9 j
super(aZone);
+ `$ w* }+ B0 x list = new ListImpl(aZone);
1 V3 V0 H: {- N5 `7 |, g: L- E swarmSetp();* ~% u2 m! s9 ?6 i, J: g
actionGroup = new ActionGroupImpl(aZone);
+ a) z. Y) y, w! H- P schedule = new ScheduleImpl(aZone);
! U( D8 l9 n) E3 S* z% [6 j try {
) p" C& C. O! z6 {/ @% e9 x7 v: R Selector agentSel = new Selector(Agent.class, "agentStep", false);) \/ n% o6 L' p7 u% s% }; ~: y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- `$ Z5 n9 v6 Z! i5 f- j/ `; V
3 ~- e' R8 k" e& l0 p1 ]$ \. K
actionGroup.createActionForEach$message(list, agentSel);$ r1 P+ L$ F- w
actionGroup.createActionTo$message(this, swarmSel);
- {+ @4 S- e) e" n5 g& Q schedule.at$createAction(0, actionGroup);* q- Z- @ \( \
schedule.at$createAction(1, actionGroup);
! a. W2 m8 z8 E schedule.at$createAction(2, actionGroup);& O& n' Y5 x }/ Y
% e2 ^( ]" I+ M3 Q- J* i
} catch (Exception e) {
1 s" [$ B: }: [1 C e.printStackTrace(System.err);
0 }1 z' o0 ~. z& M; k //System.out.println(e);5 l, c% W3 o/ |' z
System.exit(1);
7 _# R f' `- M! G }
2 ~8 X8 r; g: ]. j5 o0 k+ ?3 N! @
* U. U& `0 @$ V& h5 }$ |4 d
}
/ ~9 M4 b8 n9 ^1 r* v1 _* C) [
. W$ V! o6 m$ K private void swarmSetp() {3 ]# Y8 V8 X" e& @7 ^
list.addLast(new Agent(Id));
- t4 N' j& E. h/ G4 F8 \ Id++;
$ H% S. S8 x6 `3 F' p* W }9 E2 u' f7 W# i }
! R) {3 V w, t+ K4 K" ~ public Activity activateIn(Swarm context) {
3 n- |5 ~6 |& b2 @9 C) u9 l super.activateIn(context);
, Y) J- ]) \1 \# e/ L schedule.activateIn(this);
8 T+ [2 z _3 p" d( v. F return getActivity();
% X) e. _5 q5 m8 s' N }& g4 b6 w( U3 Q5 A
" o( T% f L( I- U8 ~6 \6 J
public static void main(String[] args) {
% W( [: G( }9 _ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- U& A0 q. N2 s& ?! ~ ?" e5 h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 l5 r/ r, M. @' k c$ Y swarms.buildObjects();
" E) G6 ~. p) u swarms.buildActions();
! w$ m" W+ q3 p* ^+ \# t k swarms.activateIn(null).run();0 ?# A$ [2 k/ U. I
}
) } P3 c4 |% a: B# {
. e% R# o" c* e/ r9 i} |
|