|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & ?5 a# N! ]- Z. g
% K1 g" l9 V; Q; L# r9 l# l. k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, J. \4 @9 K' G" B0 W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( t8 ?2 g+ C' }
swarm.SignatureNotFoundException
& V5 I8 D: N6 w& M4 Q0 a$ b! ` at swarm.Selector.<init>(Selector.java:76)- ]# @4 c# K( c" \! A- v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ w; C" T2 i Q& G% V# Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 A P& \- L/ @' M& z8 a5 e
5 W8 [3 `6 M& x- J/ \) ^; d, j+ A- x2 Y. P# `! g. j& y/ z
import swarm.objectbase.SwarmImpl;, Q1 [/ r D" w. C9 y/ h6 q- f
import swarm.objectbase.Swarm;
1 f5 i% @( u% D9 z. Yimport swarm.activity.ScheduleImpl;
: u( }/ M* y+ [' R5 [import swarm.activity.Activity;
4 d' P, a6 G# V2 O( m+ P! timport swarm.activity.ActionGroupImpl;. D# S' S+ D/ ?
import swarm.collections.ListImpl;
+ O0 |. h3 j1 {import swarm.defobj.Zone; ! |/ v; n; O8 R, C( T" N6 g
import swarm.Globals;
9 s: P- t. N; Vimport swarm.Selector;
9 k3 @ W4 g' Y- B' Q4 T8 Wimport swarm.activity.ActionGroup; " g# N: D3 R: ?) h0 G' ^9 w9 a
class Agent {
7 K+ C$ m' k8 I2 a# v- k3 d char id;
: q, |6 s! |. ?1 k W0 M: d
* b# A# h, V/ m( g4 H8 P Agent(char id) {
% f# i$ F7 b# I# b. A2 E5 X this.id = id;2 M0 Z8 v9 S2 F' m' ^2 I" k8 `% ~
}
' Z9 J2 A) P/ @# e m
# }, a8 Z" ?6 t& R" j. O public void agentStep() {9 I% m( f' Y. L0 \2 q) y
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 f2 p7 N N( H6 b6 J$ _( | e/ A }! S w/ O& X! w& w7 `+ [
}
5 K) n% I5 i# p+ R3 y6 u/ B9 t. v# ^% z* e8 |6 d/ Q
public class ActionGroupDemo extends SwarmImpl {4 E! y: x5 [+ `9 G/ [8 X; z
ScheduleImpl schedule;
) @/ D3 l$ T) N ActionGroupImpl actionGroup;5 g5 g/ x8 T( t
ListImpl list;) o+ R6 j1 ~; e
char Id = 'a';, t1 r# b& H% [) o
) q* |" ]1 t6 P- ^" Q9 H J+ w5 j
ActionGroupDemo(Zone aZone) {
- N/ K0 L+ d3 R super(aZone);; @2 j; k2 o0 g' c+ N
list = new ListImpl(aZone);/ s! H8 d$ o! Q- X5 \. q6 V
swarmSetp();8 b% l4 V8 J2 K; g: w- K, ]
actionGroup = new ActionGroupImpl(aZone);
! R$ e5 E9 r7 c; Q# j, ?7 r schedule = new ScheduleImpl(aZone);
' S/ [$ R" O$ ?) j o try {
1 H1 [2 @ J* `! q3 I Z Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 d. t% [ L$ Q0 L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 l8 z4 ?* Q6 ]- T5 \
% X6 L5 M5 f' Q0 p
actionGroup.createActionForEach$message(list, agentSel);
0 ?- D4 p/ y) ] S( i: M actionGroup.createActionTo$message(this, swarmSel);
( a" U* b* @ J2 z& q6 ^ schedule.at$createAction(0, actionGroup);
9 O% D: h( l' I0 n schedule.at$createAction(1, actionGroup);
$ o2 G* N& A2 p schedule.at$createAction(2, actionGroup);
2 D% J+ s. M* A; y
& c1 } f- W! { } catch (Exception e) {
0 C n: q; i6 U4 c e.printStackTrace(System.err);9 n( B5 v2 \, l# N- A% O
//System.out.println(e);
, D6 ~: N5 q1 t) I, U* ~6 P( u System.exit(1);
& `$ @9 N4 U$ l) K4 K) ^1 n3 [! l }
* {) H9 X# q2 i! j3 t. p- D" C- t5 T# R- @# E7 V# Z/ H
% z/ p+ c7 W4 O: r. U' K2 z } R" D+ Z; l4 P* L5 O# Z5 [
( C& R& K& i6 h- q" ~; O
private void swarmSetp() {
# l0 V. _% h7 V5 y list.addLast(new Agent(Id));
5 e6 x1 {( X4 R3 d1 H3 ^ Id++;0 N# p4 w" H I" h1 U! C8 t
}) p4 f; D4 S$ `. n5 ?: X5 s# }) X
* T, n, L$ n% |, x% t) X9 c public Activity activateIn(Swarm context) {, t9 U; Y/ d- |4 h
super.activateIn(context);) v9 j0 E, o' j; G9 k
schedule.activateIn(this);
; E: Z6 X+ `' P6 f; E" @ return getActivity();
, r$ Y1 h5 c0 \2 G! a' P, S: Y" Q }
a+ ~8 x) U* M- ~+ E2 M" c0 ^8 F2 V- H3 \2 w9 h' o3 Q! v: e5 V
public static void main(String[] args) {
, z3 t% a: y% u! o% O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* k% [: J; ]/ y O9 M6 G" H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ b7 U$ o3 r, c7 D2 Q; n swarms.buildObjects();+ g& F# s& W7 r% @0 l0 t
swarms.buildActions();
8 G, k& p0 I; U! M' I swarms.activateIn(null).run();- S; h# ^. Z$ R# h2 g
}+ v1 T- C- Y1 C$ ]7 }
8 n4 V; }* y B0 D. T
} |
|