设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4767|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! k) ]1 ]4 I" Y& k, Z/ U3 Z! r9 F: U4 K, S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, q; \  x7 r- H8 j$ j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 b0 Z7 _. D0 ]% \# C& `  Z8 Q$ \swarm.SignatureNotFoundException
* M: R- S. W$ m4 i5 T        at swarm.Selector.<init>(Selector.java:76)
& E, h1 h6 ?, ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 z1 v# ]; ~) g        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ ?. S. d2 H3 d8 }* c6 U
3 W, D$ c2 s6 G9 }6 r. n% @* p- |$ x) {  V3 ^6 o% a" O' C
import swarm.objectbase.SwarmImpl;8 M# e# n' O8 h
import swarm.objectbase.Swarm;
1 N1 j0 d" @- D& a; ^+ iimport swarm.activity.ScheduleImpl;$ u2 _* ?9 w2 M4 h. a5 ?5 G
import swarm.activity.Activity;
* P( f3 z& Z7 o; @import swarm.activity.ActionGroupImpl;, d# M. O% \( k1 w/ v
import swarm.collections.ListImpl;' Q( L7 ^9 S2 S3 m% a
import swarm.defobj.Zone; 9 E" i2 K% Z' L' H5 e6 R' M
import swarm.Globals;9 V6 `) q0 G! C$ E$ g4 h
import swarm.Selector;; G- a: r/ F4 `5 Q1 j8 d# ~
import swarm.activity.ActionGroup; 5 X7 b, L# _7 H- K$ g: I, ~1 D
class Agent {
* l% E8 ^! {7 B        char id;% e. E; t. i/ x  p) D
% ]% s! {7 l7 ^5 S9 |& d, h
        Agent(char id) {0 t7 W  a6 d" H9 y( ~
                this.id = id;$ V7 e+ d. q8 g
        }3 j5 l/ J& ?7 j2 `

; o; |* S8 p2 B% ]5 s) Y        public void agentStep() {$ W8 _% c, b8 B- Q8 d" T
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 d1 d/ B1 `% a+ b  `: O
        }& p. K" F8 e0 }* F" O2 w5 o/ W
}6 L: s' u* _) V- t* w
/ J! @4 S2 {/ z8 `8 D
public class ActionGroupDemo extends SwarmImpl {
$ r" Z* Q/ d9 j( R7 Q; m2 {! k/ }        ScheduleImpl schedule;8 d0 F  R  r0 }/ e  f$ {
        ActionGroupImpl actionGroup;
1 h' l0 Q, P5 O& w        ListImpl list;6 ^- P) N& s+ r9 m1 U! X+ q  x
        char Id = 'a';
% E& b: K3 |7 I  t8 `. Q, \
1 P, ~1 ~% Q! n3 q! M% h  H        ActionGroupDemo(Zone aZone) {7 a& ?3 X5 Z/ n' _, C
                super(aZone);5 t" K3 d* p2 H% u$ Z
                list = new ListImpl(aZone);
& ~% q" y- D" I9 q$ S9 r& f" Z                swarmSetp();
; M) b7 a0 u; ^" B                actionGroup = new ActionGroupImpl(aZone);
, b. ^8 _  |2 v; U0 f' ~                schedule = new ScheduleImpl(aZone);
  ~8 u& U( B- p9 J; P" z, q                try {
0 T4 l2 a9 k5 I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 {  Y/ W2 _) }& X& W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 A3 w. o0 y! @0 Q( e# m
                        1 Q4 X6 a4 |; h( r2 N8 k2 V
                        actionGroup.createActionForEach$message(list, agentSel);
& M! Y+ D+ E+ D  S0 y8 X4 K                        actionGroup.createActionTo$message(this, swarmSel);
/ ~& \2 `# D/ w0 O  N                        schedule.at$createAction(0, actionGroup);( v) |( u& _+ I3 b9 J3 i8 l  }
                        schedule.at$createAction(1, actionGroup);
6 P0 B$ R& X+ T                        schedule.at$createAction(2, actionGroup);
) ^; P' b9 R' \3 b; _8 Q# o$ m3 {; Z5 [9 W
                } catch (Exception e) {
. H' w& O, f( z1 j8 T                        e.printStackTrace(System.err);
" Q+ U& I. H- {                        //System.out.println(e);8 M5 ^: V; p2 y( ]
                        System.exit(1);$ \9 l7 V8 p" A, `- z3 l
                }# ^2 q6 g' @5 W5 _. V0 R1 i& {
5 O+ M+ W" n. m$ s; {) H
( I; j9 A# c4 t& K9 J% r  n
        }
! u) x* s. g0 C6 n  w  P+ l
: [2 H/ `- W0 [  q$ c) W        private void swarmSetp() {
  J* v; o4 i5 H4 X                list.addLast(new Agent(Id));/ M7 W# F0 p) P9 U
                Id++;
- R1 _& A  n$ |' a  S        }
- V& x8 O' h2 s( x1 G. O) r
, @8 Z: }0 R7 u' J6 e7 ?7 r3 S        public Activity activateIn(Swarm context) {' ]" g& |' s/ \/ w2 ]* _" B
                super.activateIn(context);
( E- t6 b8 ]3 B7 F                schedule.activateIn(this);3 v4 J, b, f" B  g) e& F/ K" g
                return getActivity();4 b' i; t: m, J
        }
& {! I3 Z, D8 p( b* J& t4 M2 {* \8 n: n2 w- V
        public static void main(String[] args) {* ?* }. H" O+ |  I9 I4 d: [% h5 V
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 i, `7 w" K7 N" a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; i' m- N' f% N# s" t                swarms.buildObjects();
! L" a% t0 G3 u                swarms.buildActions();
" M, h: ^9 f9 K, O                swarms.activateIn(null).run();
- [5 U0 [+ z# F  j% N4 p, `        }
, ?. S, E5 M( R" G+ q3 ^' V) G# e0 y$ x+ O8 a7 ?! {9 @3 \
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-10 21:33 , Processed in 0.018649 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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