|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) [; n& u' z @( j2 F' L
: _3 a9 {3 @9 X! k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; r# p- M& g: [7 l* c1 `2 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& @1 ]+ P5 m+ m3 Oswarm.SignatureNotFoundException& P- x( i( A7 P; H! X, _5 m
at swarm.Selector.<init>(Selector.java:76): n# [: C9 Z- N( O+ S8 G* u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 K2 w6 F+ N) {, m Y; K* r
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 |+ W D) L3 t2 ~/ b! O
# W1 d I% _' f: |
2 f& n. \. t% c9 \5 d" L
import swarm.objectbase.SwarmImpl;+ B) d8 j j4 V. J3 Y2 [; R! i3 u
import swarm.objectbase.Swarm;3 W/ G2 N4 k! s
import swarm.activity.ScheduleImpl;
( l. f, }1 Q6 W; c0 |5 w' p$ eimport swarm.activity.Activity;
! n& F/ y5 H1 k3 p6 Q4 Kimport swarm.activity.ActionGroupImpl;; W& z! ~$ l( A
import swarm.collections.ListImpl;
9 s- U. {' m9 ? f; @- R' Iimport swarm.defobj.Zone; * ] g; ?, Q/ X9 P
import swarm.Globals;) C; [* l5 }' Y
import swarm.Selector;
8 `) k A0 p5 i) _import swarm.activity.ActionGroup;
. L, Q) t0 Q; A+ o ]class Agent {3 ^3 m5 i& L( T) `1 p; }* y, L
char id;
4 \. _$ O s% z5 x/ h* H
; @ I' }7 U- @; |; J8 |5 U( ~4 U Agent(char id) {
; ?7 r I7 F& Z; w this.id = id;% l# ]1 m3 q8 w! Q* m: J8 C+ D- X
}
$ e# s% h3 H" y% F
7 b+ W. H% ?2 \ public void agentStep() {. F [8 g9 a, e0 v) ~; y6 J, D
System.out.println(id + ":" + Globals.env.getCurrentTime());3 K ^/ K# c! h/ v" D4 S( N
}
" x) \! g$ Q1 s5 X4 H4 v}' v. x9 Z$ _& O8 c$ a" O* e; i. G. Y
- p0 {4 E( `" L7 {
public class ActionGroupDemo extends SwarmImpl {
: r, h! i6 `0 U+ z( P/ I: w ScheduleImpl schedule;8 f/ w' N' j( h. w/ S
ActionGroupImpl actionGroup;* s1 D7 {, o) n/ {5 ^
ListImpl list;
, e3 a }- \0 }& L/ J char Id = 'a';7 d' d3 w/ A4 ]+ o! r4 o2 n
/ d/ W; g6 n5 A" {
ActionGroupDemo(Zone aZone) {
! M6 W* L, O4 ?& M) {/ y: D# D# l2 ` super(aZone);
2 o; U, y; J3 q' E/ R list = new ListImpl(aZone);
$ v* i% f; c5 q) D1 M$ S; P$ c2 t swarmSetp(); q- A5 y0 Z# D) }1 ^& @3 j5 S
actionGroup = new ActionGroupImpl(aZone);
0 s" Z; W: C% b' W$ H- \9 N schedule = new ScheduleImpl(aZone);
* n/ d( T$ S/ o5 |" i try {/ C+ |1 I" o4 b5 O. @! J4 l% W
Selector agentSel = new Selector(Agent.class, "agentStep", false);( ?4 o( G6 t; |0 z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 }% d2 v& Q8 U; g
. T5 v3 q5 [- C' |1 a* E actionGroup.createActionForEach$message(list, agentSel);
/ i" i% L0 R; k3 T- F2 R/ ?$ r actionGroup.createActionTo$message(this, swarmSel);
: x6 ^- u% n3 q9 m2 B: O; @9 j schedule.at$createAction(0, actionGroup);
6 S/ D& `& J6 [; x8 h& y! ?) e3 y schedule.at$createAction(1, actionGroup);
# n* `$ _1 p# W: c schedule.at$createAction(2, actionGroup);
: c, z6 f# w+ H& w* c* N4 i3 ^6 U4 Z: Y! S& [1 ?. O/ _7 M
} catch (Exception e) {3 p5 z! Y, C% ?: @# a3 H5 L
e.printStackTrace(System.err);
- W3 X; K7 F5 C8 X0 o //System.out.println(e);
1 c6 K/ x) t, ~/ y- M8 l7 A System.exit(1);, l$ W, ?3 Y, G! C3 n
}
+ |3 n' K Z/ f: b
; k6 g, x/ }( m6 }, z6 x/ i0 O) d4 e9 w" ?1 S4 b
}1 I7 d1 z- s* \ J, R5 ?) \. k
- g F6 d0 Q) l private void swarmSetp() {
; Z3 R4 m) t# v. E list.addLast(new Agent(Id));( x* j: a6 Z/ ]8 Q
Id++;, G4 W5 Q! I% C" \
}3 u) l+ S- Q" E/ E4 W
7 {* P5 r& u4 _2 v7 J- {# r
public Activity activateIn(Swarm context) {
$ ~6 X/ Q. j8 G4 N b, g9 ?' q3 n super.activateIn(context);8 p9 l! S: d' l% |2 l3 G; b: R
schedule.activateIn(this);
* U/ I8 X% @# R; d; P0 l return getActivity();
" y. M: v" O5 e! T$ f! h, V }- V; W. u8 ]# J
1 X/ z* v7 P# V public static void main(String[] args) {+ j. L, ^$ G/ K# l9 ~$ Z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# o) Y- I! V6 c( @0 l( R" F
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 K3 T. @2 K6 D) Q+ \& y( B
swarms.buildObjects();) p& q6 c3 f3 g) H
swarms.buildActions();
; _' H3 f. s# m swarms.activateIn(null).run();, F9 K n0 [& C: F# `9 f% a6 V
}( Z R/ ]5 v$ m& r0 M7 ? _7 s
9 }( w2 J) [$ t' ?} |
|