|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* v0 @& O; c: u/ H9 w
( k: s6 ^2 @* \8 o+ M* ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 n8 T9 e4 m' n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 c s$ ?4 a/ q3 e8 G0 r, e) C, ~; x
swarm.SignatureNotFoundException
5 R$ r8 x0 |% j7 l l8 T at swarm.Selector.<init>(Selector.java:76)/ g. C8 o: }1 L6 t& y" f7 C. c
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( ^7 k' ]: B5 f at ActionGroupDemo.main(ActionGroupDemo.java:67)
( M( V1 t+ e% c
6 v8 l5 w7 l: G+ j. P# U% I& C* P* U; [! z2 P+ Y* h2 X8 [5 B
import swarm.objectbase.SwarmImpl;
! v* b+ [. O; @7 j% c- f4 Z+ Vimport swarm.objectbase.Swarm;
9 _8 |- O9 q! e5 ?9 fimport swarm.activity.ScheduleImpl;4 r+ [5 Y/ w4 h6 g7 c } b0 ~
import swarm.activity.Activity;
. I" l W7 n( C9 N) n- qimport swarm.activity.ActionGroupImpl;
% n# _" J! s- c5 Simport swarm.collections.ListImpl;" Z+ s2 w6 c7 E# v4 e+ T
import swarm.defobj.Zone; $ ~6 t4 ]1 k# P( ]
import swarm.Globals;# ~9 N) P/ q( B6 ?
import swarm.Selector;' ^0 s m6 u; l
import swarm.activity.ActionGroup;
- O) P1 m* M+ m- F( }class Agent {
s' I7 y5 r7 o- T! d2 R char id;
" E! w& }* J2 @- }3 u5 Z0 u/ @4 b3 N" F; u& w* z+ m' d5 D
Agent(char id) {
. K8 ~! @& r8 Y5 |4 ^5 w2 S this.id = id;
* ~, P! Y( S! `! t }
% I: i; n( k0 L# u2 ?4 A
. Z o# b6 a0 q* S$ u public void agentStep() {
8 @4 `, e0 ]. p1 j2 G+ D System.out.println(id + ":" + Globals.env.getCurrentTime());
$ k" Y3 a! D$ E% V* i }
9 @0 v3 a# w0 T* T}
' d/ {+ b1 W: B# W& N% K: ^, Q) y9 @, m7 e* f& D2 }+ E; _
public class ActionGroupDemo extends SwarmImpl {
& J$ P, R- H! Z V! b ScheduleImpl schedule;. V3 S+ Y' H. w6 z- y9 E4 c5 F& E
ActionGroupImpl actionGroup;% X, {0 V8 b6 e0 }* Q8 [9 o+ e
ListImpl list;1 i: y8 `; ?! B+ E
char Id = 'a';. i: Z& |8 p( t- o8 c" x, D
& b0 L8 ^! o. A: y3 R; W
ActionGroupDemo(Zone aZone) {
( f$ ^8 Y6 j' B$ U# t super(aZone);$ W4 D4 i0 k* [& I' P) S7 [# T% x
list = new ListImpl(aZone);
2 _/ B" i7 Q. H! A swarmSetp();4 y9 X! v7 B1 J) f
actionGroup = new ActionGroupImpl(aZone);
% e$ b3 r, k8 e [ schedule = new ScheduleImpl(aZone);
) D- M% P! C' b3 f p1 u try {7 e; P* R* a. |& ?) m! W' K
Selector agentSel = new Selector(Agent.class, "agentStep", false);! q; A! J! R# m8 U9 i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 \2 T! N. U% N4 O4 `& ], [
: @$ @- }! O+ B' f actionGroup.createActionForEach$message(list, agentSel);
7 H# Z8 I) h% u" T2 p) m u actionGroup.createActionTo$message(this, swarmSel);, L+ L6 \; x$ |6 W u
schedule.at$createAction(0, actionGroup);
8 `, M) k( i; {$ l1 w3 i1 p- L schedule.at$createAction(1, actionGroup);' s5 U# u, N9 o; U) A/ N0 i
schedule.at$createAction(2, actionGroup);
0 ?( d! U! u; }# |- O" n4 L4 u! m4 P9 a
} catch (Exception e) {
0 `/ {! H: P$ B) {3 f) O7 K$ O$ V e.printStackTrace(System.err);
+ G9 b- {0 d- k4 W" ?! A, Y //System.out.println(e);
2 X; n8 L7 M2 _! w$ i System.exit(1);5 |6 p7 ^8 F8 M5 E4 u- M
}8 c: l l: t4 D' B
- j" F4 x- G+ d7 p5 w
2 t; `9 c2 D0 c4 }- { ~+ K }
+ C3 @# E) j4 M' U9 f0 O) i( ^- m. O0 A% q% a9 a$ \; p2 @+ H
private void swarmSetp() {$ j; ^( l& h) Q
list.addLast(new Agent(Id));
Y! w2 ?- \3 l$ l* a Id++;& G! I! M, @9 b4 t( P( `
}
4 x( M. c! |6 M" x" w( n; p% u% y1 f% m( x, {$ m! w" F
public Activity activateIn(Swarm context) {
; E9 Z! N7 b; h- d ]5 A4 { super.activateIn(context);1 A+ C- `( L e. O t8 M
schedule.activateIn(this);
- e1 O; q$ V2 u% P& s/ V) Q return getActivity();) |, W9 \+ E/ X! H# Q* y7 ~. n
}$ I+ J& i& N* v/ q
; ]$ x0 X2 x' c4 r0 B public static void main(String[] args) {. J: u- G" H* g2 H s) l* {0 f+ K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 W( ?/ Z: ^1 X) k% @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 k9 C% |+ t; b
swarms.buildObjects();. v& [: J& l: K4 U: O' s1 b7 M: o
swarms.buildActions();- N5 H/ E0 H" w( H+ l2 ]
swarms.activateIn(null).run();
7 W+ L1 W2 a. h* N0 W' J5 N$ r } I2 _9 I" n+ f' [
& P$ Y1 |( M+ t} |
|