|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 f4 h$ m) g. N- E7 c
+ A( x# _& c2 U0 G9 K3 I% [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 l$ R0 o/ o$ ~: o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ T4 q$ R- i, ?- `8 nswarm.SignatureNotFoundException( s) Z! P: j- L) [ L" [2 [" v
at swarm.Selector.<init>(Selector.java:76)& y: U5 a9 |5 D7 ^; j0 A; O# \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# H1 k2 x1 _$ g# F* [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 @& |8 [0 @! e* S1 J( E; Z) i. ]0 l$ B) N V) A( B8 ^
. S* I/ h+ m/ g. F' G- ~$ ^2 Zimport swarm.objectbase.SwarmImpl;: E+ I7 c# L i8 ?' M7 b9 \
import swarm.objectbase.Swarm;
' `3 Y( b% x3 L+ K, a4 p) nimport swarm.activity.ScheduleImpl;
# t" P y5 c2 R( O9 u9 Cimport swarm.activity.Activity;4 {9 o! z' U8 O( y4 b: B5 i
import swarm.activity.ActionGroupImpl;4 g6 d- W! ?1 {# N
import swarm.collections.ListImpl;
. Z7 H, v- O3 D* ?import swarm.defobj.Zone;
9 T' Z5 S- f1 M9 Y' `import swarm.Globals;
) ^2 I5 T, o. ^$ J0 e) u) f% K# gimport swarm.Selector;
$ T/ ^+ h. _; c& qimport swarm.activity.ActionGroup; 8 d5 r- R+ Z9 H
class Agent {+ r0 h1 w" t! i. G6 V0 E( [" Z( u) b4 |
char id;9 x) M) q; t4 @$ [: Q4 x
7 J, x, P* d" t! r* H) A* S Agent(char id) {+ |1 |# l+ L0 O+ x7 v
this.id = id;
, G! w1 p' ^" n3 N1 R }5 o6 ]8 `: H: a5 T! w
( r$ ^6 v; q( G3 t- m! M public void agentStep() {
4 |. ~2 d- U& R- Y- B# S% r) f3 ?) e System.out.println(id + ":" + Globals.env.getCurrentTime());& d; b4 |0 q6 A" V. K& t2 k
}; ?1 `/ {5 a, Q* F) I" y8 h& L
}
3 h; U4 I1 b" n/ _! l
" w: c7 T; z9 T* I9 s. ]public class ActionGroupDemo extends SwarmImpl {
9 L+ I8 Y7 K# c ScheduleImpl schedule;
' V ^/ h3 a. m3 K ActionGroupImpl actionGroup;
' m) P1 [+ N) n B6 H: n0 e ListImpl list;
& O3 I9 G1 d9 l$ d* u) e/ U char Id = 'a';( w t5 i8 r8 u" N! e ~
2 o0 k2 t. D& ^9 x1 Y ActionGroupDemo(Zone aZone) {
; ^' v6 ]7 Y. a super(aZone);
: J* o, O. ~1 Z list = new ListImpl(aZone);: D6 u$ D& c( M: W8 g7 Q N) S7 t
swarmSetp();. }2 W* u4 k: V/ I
actionGroup = new ActionGroupImpl(aZone);+ d5 j% b! p( O+ ]( w( ], g. s& i6 I
schedule = new ScheduleImpl(aZone);
& U! Y1 K: y% T# f8 z8 R* b& ~; W try {2 l3 P" U" ~% P6 H( D2 w7 L y- i+ L w, A
Selector agentSel = new Selector(Agent.class, "agentStep", false);& E' ?* s- R2 ]8 Z: p8 k/ I6 N6 Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) }, Z( V! Z$ c: g: n. t( T3 P: l
: h) r$ u0 I3 \! Y+ B9 o! {2 s6 Y
actionGroup.createActionForEach$message(list, agentSel);
! Y3 @% t' K7 C: o4 E2 o6 H actionGroup.createActionTo$message(this, swarmSel);' v! {. T1 ]. L8 \! w- w$ [- u
schedule.at$createAction(0, actionGroup);
( |4 u5 n- O& d schedule.at$createAction(1, actionGroup);
! D" x7 P o! L! w) Y schedule.at$createAction(2, actionGroup);
9 ], Y* z( w4 h& K1 j6 k& Z1 B" `& ~" r6 y t% P6 {5 n
} catch (Exception e) {3 U" V' W' `: X$ Y! X+ P6 m
e.printStackTrace(System.err);
! X9 J4 m/ n& P% q //System.out.println(e);0 W" D Q, O% o
System.exit(1);
+ K C' b$ V* r }
+ L- `2 L. g* m) e2 R
! k Q) a5 i# u, ~
( a& S( C4 w* T0 O7 ^ }
7 v2 r1 n; n; G3 }) s* a4 z, s* z0 i' e
private void swarmSetp() {+ o6 o0 H# i4 J6 G/ x
list.addLast(new Agent(Id));
, z0 |+ |2 M# y Id++;
- b, D# ?8 `* r' ^" a }
6 L0 d6 h) j2 r4 ^- W$ a4 A
0 t: q" z1 `- ]. A- U public Activity activateIn(Swarm context) {; O1 L! L' O# k+ o" q( z
super.activateIn(context);
8 m% o( w" o6 I Z# j9 x( q* h schedule.activateIn(this);
* `* H+ a% x0 d; w return getActivity();
; j! R0 S* n H/ z' P$ ~. j }. Z8 q; }5 v- J( k6 ~
- ?+ `2 ^* \6 F# G5 k# ^ public static void main(String[] args) {
# a8 I! @) ~& \0 J) ^% L% m3 D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" g8 w6 T: s1 T$ d F4 | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 m* a# ~* }1 ]* T( _
swarms.buildObjects();
# @" x; t( P" D8 c swarms.buildActions();
! M5 t% i5 Z3 q swarms.activateIn(null).run();
3 V, D( ?6 n" g0 R8 | }
; Q: F3 a+ Q) }1 m6 }4 c
4 w: ^0 o, ^6 g0 y) g, t4 k} |
|