|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) t8 M; g' G5 v3 t5 s/ x2 I6 _' q) x6 Y0 b+ U! h4 e" J' N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: T/ J, v* i, y0 [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; D' J. j* _% d! r4 rswarm.SignatureNotFoundException
. I# z% u4 A% e at swarm.Selector.<init>(Selector.java:76)8 ?& B1 {& N7 w+ @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' r8 T& C# z7 H
at ActionGroupDemo.main(ActionGroupDemo.java:67): B3 l" I+ L6 C) u: H
: }5 d9 A; B( {; z
2 [. U+ U* A1 p& J4 ]
import swarm.objectbase.SwarmImpl;
7 ?! v) C+ X: \import swarm.objectbase.Swarm;% N9 H- C0 \6 ?# ~, W \- N
import swarm.activity.ScheduleImpl;) ^* |- h9 d- Z, S9 G
import swarm.activity.Activity;
- o0 A( u7 i. j s# M& |6 [import swarm.activity.ActionGroupImpl;- ]: J; a9 Q5 {
import swarm.collections.ListImpl;
, J' ~. s+ ]) M ?% G: limport swarm.defobj.Zone; 3 H l) b. T/ W& Q2 ]
import swarm.Globals;+ ^/ v. s+ K2 R$ m
import swarm.Selector;
0 q( s4 C$ \3 L( G& ^. y# L' ~import swarm.activity.ActionGroup; 3 {3 g' q% B0 K$ i1 f' @
class Agent {
& ]5 `& B" ]" ]$ R char id;) B. ]0 o9 @1 E) ?" d0 Y7 k
2 T! l1 N$ T" a) B$ A- D5 ^" \4 X, ^4 l
Agent(char id) {
- }) f, E3 P% [ A this.id = id;
+ a9 _: r) x8 l7 P6 h }
( F ~0 r! U, _$ C; w+ n" F! s) f3 f8 k$ z5 y R: ?4 q
public void agentStep() {
4 J8 Z' {' A& r8 M1 Q System.out.println(id + ":" + Globals.env.getCurrentTime());( a) A+ [, [. @1 B, q1 P
}
5 h' j1 C2 Y6 t/ y2 N/ U" Y}$ x" s" m% D" y9 x C; T
) B9 V r3 _0 {! h* l G2 y$ J. x5 Dpublic class ActionGroupDemo extends SwarmImpl {
1 Z9 w: {6 Q! p8 K( w ScheduleImpl schedule;( I' R2 i9 _8 d: h
ActionGroupImpl actionGroup;
, u0 O: L7 B1 ?! e e ListImpl list;
) p- I# x0 G/ h# @ char Id = 'a';3 _1 h" k8 C! |0 u# J I8 \
" Q% P6 z5 _+ q% X; v7 \9 k ActionGroupDemo(Zone aZone) {+ Q6 y6 K1 `3 _' q6 K) O
super(aZone);1 N$ I! M, d# k6 V
list = new ListImpl(aZone);
$ m: x2 e& _; u' J% L- e# j, I swarmSetp();& d! X1 x3 b% s) w! T- z. [5 c, g
actionGroup = new ActionGroupImpl(aZone);: S5 w; B2 {$ n& t& r3 h
schedule = new ScheduleImpl(aZone);
( F7 a v+ h, W+ `9 G* H& n P try {
$ H5 F$ ^7 I0 W Selector agentSel = new Selector(Agent.class, "agentStep", false);
. E( B6 X$ p {9 _/ v, q+ p2 A9 g! V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 l' P5 C6 z# i' U* `. U 0 i9 e3 q& g7 U
actionGroup.createActionForEach$message(list, agentSel);
/ O. s8 l) S/ r; J) U+ u+ X actionGroup.createActionTo$message(this, swarmSel);4 f' d5 D& @3 b/ y* S& Q( ]
schedule.at$createAction(0, actionGroup);% |: |4 \4 H7 ?+ T/ G0 o8 `: p8 g
schedule.at$createAction(1, actionGroup);
& c% S0 l9 p' ]4 p3 W4 {( c$ s schedule.at$createAction(2, actionGroup); z) v) _" Z# |1 v
4 @6 \5 h! S7 d0 l } catch (Exception e) {# ]' r8 n6 ? B8 I# A, T& j0 z8 o( l
e.printStackTrace(System.err);3 U# ^" F/ t8 {1 t8 F8 r, L
//System.out.println(e);8 t9 T5 {; }% v# p) h/ l0 H- z
System.exit(1);$ h. `& _7 K2 r1 G
}7 i2 w7 b. j& B% e3 l/ e
9 t: l8 w7 A9 q9 I, ?& {# n9 m/ M8 F9 @# p, R# m3 T! @
}+ |+ ]; @5 Y' N
4 d4 u4 b* Y1 C) a2 o9 j6 I$ R
private void swarmSetp() {
8 {* _0 N+ Q9 \, s list.addLast(new Agent(Id));
+ x! \& Y* d- R* N; r5 \9 m Id++;
: e8 B7 ~3 W- R# W3 y% | f }
/ b* z2 N, ^5 g% \8 g) x8 Z+ c7 x5 D: J( J7 F6 D* H( F- v
public Activity activateIn(Swarm context) {
T2 B) w& G1 g# [% f( ~( L2 s# g super.activateIn(context);
7 ^0 i l! R# o schedule.activateIn(this);# Q, Z6 q1 z! T
return getActivity();* j$ q2 e( y! M P! G; I' z
}
" P; `; S" |+ Z; w+ W" k1 T- i8 k7 h& h x& u5 O7 O- q
public static void main(String[] args) {
* n- f6 n3 l) v" F) a0 A: | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! B- a$ K$ w3 V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! U M) S1 y; q1 S- F8 J swarms.buildObjects();% |! v/ @: R9 W' P% Y9 N
swarms.buildActions();
- a3 [* |) b' X/ z* q1 v+ [ swarms.activateIn(null).run();
" @( q: N/ x4 u( I' P }
8 X+ d! e% ?9 O( Z# x5 p
' X+ f5 q) c8 m& v) }1 a} |
|