设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10003|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) R- h+ |+ G' k' c( j$ x3 a6 K/ R3 U1 s4 n( O$ X* _+ e+ {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ j; D6 O' Q( d# E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 A  g5 i% {$ p8 {9 W
swarm.SignatureNotFoundException
' z# J* P7 e% x, c& e        at swarm.Selector.<init>(Selector.java:76)
9 d, n* M0 `% ]* Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  ?2 p$ [; a: c, f! i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 f8 `8 F% W% R. \' }# f

2 z- ^; V5 w* b. P9 R, ^+ g  L" F- f0 M1 T; T9 G
import swarm.objectbase.SwarmImpl;7 F* _3 N: ~+ k6 G7 S$ P- b
import swarm.objectbase.Swarm;
- r, j1 M* i5 simport swarm.activity.ScheduleImpl;8 A' h1 `+ l) i+ O
import swarm.activity.Activity;6 Y' y6 Z: J/ ?, h3 _* j
import swarm.activity.ActionGroupImpl;
: Q8 I. W3 @- F" y2 Limport swarm.collections.ListImpl;
3 Q0 F5 n" o/ M+ K& i( o% A3 r; N+ L5 cimport swarm.defobj.Zone; " {$ a6 k" S, U/ n. E2 _% ~
import swarm.Globals;
# p+ Y! r- y6 qimport swarm.Selector;. S' A$ p6 g# O2 ~8 {1 i1 ^& \9 [% U
import swarm.activity.ActionGroup; 3 Y+ ]$ ]' m" t. e
class Agent {0 O& x# w! u/ t' q( o
        char id;# `+ e2 ]1 o/ w2 A8 |
* _& |0 S& H# f5 m
        Agent(char id) {
4 T& @" r. Q1 h* x2 ]                this.id = id;
  ~; u4 ]; c' b, m! s- T+ \        }
8 D$ H$ g, {7 G' B& l: H* ?- a; `* z  O1 c& \
        public void agentStep() {( U7 h/ S8 k& h* ~: K* _
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- n- \' k. ~0 N9 _9 l        }; W! ~- j. e# w2 y/ F. {
}
% N& b  u  L+ v( h, L+ C& N7 N! ^3 \  E
public class ActionGroupDemo extends SwarmImpl {  A. w% T  y# j/ }9 v# Y/ Q
        ScheduleImpl schedule;
3 d$ m" D- Z4 ~        ActionGroupImpl actionGroup;& @" ?/ N+ x& L5 z4 i! o
        ListImpl list;
6 k$ y2 V0 z1 p        char Id = 'a';9 I' e% X6 y0 ?
- v1 G" a) ?- a4 ~$ @6 [
        ActionGroupDemo(Zone aZone) {1 W5 P8 o. _% `. I' M' }! s* o; w
                super(aZone);
- z1 T& D  z  l# m% T; j                list = new ListImpl(aZone);; |/ T8 f' ~) V
                swarmSetp();9 O8 i- \& K# ?  S$ x. w
                actionGroup = new ActionGroupImpl(aZone);5 a& t9 T$ k8 ^% j- T" b$ b* [7 E
                schedule = new ScheduleImpl(aZone);; U; R3 ^! D, z" E/ c
                try {$ U3 b0 k6 ]+ b) P. }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 G7 x4 f% F$ U1 L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 D! o8 d" K% R3 e6 z, m, q                        0 h. }2 B: ]* x; {, N# f
                        actionGroup.createActionForEach$message(list, agentSel);* N$ N8 b6 }2 w! B+ Z
                        actionGroup.createActionTo$message(this, swarmSel);6 m1 \+ ]3 P  V
                        schedule.at$createAction(0, actionGroup);
! l4 m. Q) y; L; _' {! l+ i                        schedule.at$createAction(1, actionGroup);, H% a: r; Y2 m1 E2 B
                        schedule.at$createAction(2, actionGroup);
4 `$ g0 N) r6 e- V, C- {1 v4 i
7 U; a, h, u. g4 g( q# ~+ |/ c! p. f# w/ c                } catch (Exception e) {
6 |$ q8 c9 N, u9 c  d6 |$ V                        e.printStackTrace(System.err);
% X+ b& C! q* a. j, s2 u/ b                        //System.out.println(e);7 p1 Q' M' d+ ^: N/ r1 t% [2 D/ u
                        System.exit(1);
3 {4 R7 Y3 j" v2 B* w                }: H9 }% L0 Z# \! n
3 t8 R* T6 }* R2 Y# K

: l4 w+ t1 Y- e' j" ^        }
, f4 b2 V" ^) Q0 s0 W) z4 e6 Q4 a3 |' Q5 l  N9 I* X& X
        private void swarmSetp() {% @  C. {* ]$ R
                list.addLast(new Agent(Id));/ Q2 g" W( N* d8 ]
                Id++;
6 N' @; m, Z  }% F8 x        }4 r. B: n7 a- z5 V5 g3 W6 k! c
8 y  ~1 k# o+ m9 P' L
        public Activity activateIn(Swarm context) {/ {3 x7 B0 G2 X  O, u
                super.activateIn(context);
% Q/ N3 n$ b! H6 x0 F                schedule.activateIn(this);9 v* w* L, K7 d' {
                return getActivity();6 }& c8 {9 I6 O' c" E' O+ ~
        }' m7 G6 q1 B3 v) e

; z3 m  ]; }6 m5 a  _        public static void main(String[] args) {; g6 o; M5 E% u9 |# F
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, a3 O1 S. P$ f4 j' N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 L6 H6 i* L' \
                swarms.buildObjects();
+ s6 B: c+ x' b                swarms.buildActions();
+ S$ a- g+ i* \% t                swarms.activateIn(null).run();
1 Y* R) U' s! o3 G% [# I        }
4 _7 j0 R$ `: H
. \  d# f7 `# S1 P- y3 ^0 x}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-5-31 05:20 , Processed in 0.018887 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表