|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & K/ |% `- m/ D* K7 w8 b
2 }9 I# \! @& r, {9 h; Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* v6 [8 `1 K$ K+ r+ M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 u* I0 k3 T# b, c) p. @, p
swarm.SignatureNotFoundException: |$ l T% k n8 w/ r
at swarm.Selector.<init>(Selector.java:76)) |' s0 }& I, K3 d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; P" r/ m! z" j' q7 L at ActionGroupDemo.main(ActionGroupDemo.java:67)
, b5 k; g3 j7 \' n r2 q
* h* K7 n5 g- Y, J
; U3 f2 G8 l! Bimport swarm.objectbase.SwarmImpl;2 Q1 F4 O% U4 S, v
import swarm.objectbase.Swarm;
$ v9 f' j2 \2 Q! _- n6 Y- rimport swarm.activity.ScheduleImpl;
, p0 o5 n3 a" r1 bimport swarm.activity.Activity;- @( t5 X; Z0 `5 k2 p
import swarm.activity.ActionGroupImpl;( A7 L/ E% _' a" v' T. E, k6 \
import swarm.collections.ListImpl;
! Y7 o. g) V& }. l0 T. x% Timport swarm.defobj.Zone;
* y( C1 [; \9 T, _2 E' dimport swarm.Globals;3 o5 D$ L/ u9 J4 ~7 m$ k. P
import swarm.Selector;
. S7 f0 d, a# }" J( r" Q2 \! dimport swarm.activity.ActionGroup;
1 n# w& J2 P# \) @4 l% E: k/ v; sclass Agent {
( G. x% x2 [( j$ f) w char id;8 G% ]. e/ s* |; x) a% _+ _
- q% F& Q% g3 o7 m
Agent(char id) {8 J J; S$ w7 P1 D9 g0 F! O' I
this.id = id;
. k- J* v0 k) Z) x) C }2 u- S0 G: m( [: R
0 b7 F5 d" w# N& I* ~: r# t6 n/ u
public void agentStep() {
, U$ }, v; K: B System.out.println(id + ":" + Globals.env.getCurrentTime());" b- K9 U" n M6 [
}+ |$ L6 x$ h% F6 {2 v# ^
}
' |& T; z* Q& d6 S" I' @) T `; }" P" P/ T6 }" [# m
public class ActionGroupDemo extends SwarmImpl {. N3 g- j; |: v! A" R( h
ScheduleImpl schedule;6 ]$ s& O1 D+ Q% E8 J
ActionGroupImpl actionGroup;
! q; R& `" W! W& k) Q6 C6 I0 V ListImpl list;* b9 m* r b) m) L
char Id = 'a';
, }6 L. P+ w G# m+ v& K2 d
" p8 g' b1 B9 q. H1 f* E# i ActionGroupDemo(Zone aZone) {
" `$ M: G# q9 u0 e9 ^ super(aZone);
I" P( b( V8 P list = new ListImpl(aZone);
1 e; C" S6 O& O) }- l& i swarmSetp();- k1 B2 C6 u4 A( l5 M. N
actionGroup = new ActionGroupImpl(aZone);
# H# k! y3 x# I+ i Y+ B schedule = new ScheduleImpl(aZone);" |1 o* K- W/ o4 b+ K1 c7 R' K) ]
try {
: `+ }$ S6 V3 y& J0 i2 n" w6 A Selector agentSel = new Selector(Agent.class, "agentStep", false);- B! m2 C. P" A+ G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: L$ c7 G$ E2 j2 d3 c
% B6 l5 Q; N8 D5 B/ p! t' L8 g7 g1 B
actionGroup.createActionForEach$message(list, agentSel);$ T' k Q2 B% t. J0 g% Q
actionGroup.createActionTo$message(this, swarmSel);
1 A0 s n& b3 q1 r7 |. o9 _( o schedule.at$createAction(0, actionGroup);
7 ]6 ^0 x/ T' V$ S6 L9 j1 V2 h schedule.at$createAction(1, actionGroup);/ l4 n! w; Q7 y
schedule.at$createAction(2, actionGroup);
8 ^/ D" T. R6 y; o# {3 I3 b# U7 G8 b3 \- K
} catch (Exception e) {
9 \- F$ k6 M) U+ U6 ~* Y e.printStackTrace(System.err);/ z# j9 b' j* G/ q; u
//System.out.println(e);& }" M* M, m7 }
System.exit(1);
+ D1 v( y k9 N9 L* K: Q% z2 h } g3 X$ Q+ O2 T2 _" U+ f1 z7 x
3 s4 C3 B2 N* Y7 P5 |4 W: w u ~5 u0 G' f/ j' p' }
}
8 g" T! S& g5 l
: H0 r4 C% u1 w private void swarmSetp() {4 w0 V) k# y+ e7 C( Q. `( h+ ]4 ?
list.addLast(new Agent(Id));- u9 s* H z: H- Y
Id++;
& o* p& J6 Y, a0 v/ H }
3 y' O4 t" q- U( t# G W7 q& u& G( _3 r7 K1 b# ~, X% _# ^( V0 c
public Activity activateIn(Swarm context) {
1 d& F. K6 B! n% Y: Z super.activateIn(context);
4 j$ {9 X! {0 U' [7 h( r schedule.activateIn(this);
( B# X+ }4 i& t. C return getActivity();
4 i0 k/ K4 ^8 f* K! e. L }* l' \( }4 S) S5 m* T2 {' E
7 l9 w5 }1 @* b3 r" u5 p) U
public static void main(String[] args) {
& h9 p, q L2 S% M0 | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 g, {+ V6 y1 c. l" D$ _. p/ N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ ?/ [8 e. a5 S+ v8 r- \# M
swarms.buildObjects();7 ]( b) J1 g* ?% A
swarms.buildActions();
0 h2 A% q6 f% a5 i, }7 s0 m& h swarms.activateIn(null).run();6 G) |9 f. X8 M' j/ u9 t$ y
}
5 O6 J0 E N4 D( ? F8 M+ t
- C- J: w" [0 w$ t4 S8 S} |
|