设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5258|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : a  Y/ i! t/ D, j1 U$ w
7 r) _0 c3 @$ l4 f9 C. D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- z' z; G0 Z: k  S$ K6 A! O  Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( E/ B# W: d8 m) ~0 [
swarm.SignatureNotFoundException
9 \# {- D4 v* ?7 _9 j        at swarm.Selector.<init>(Selector.java:76)/ I* `0 N" T% T8 c
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# _% y8 h2 @5 z& z        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 b& t% h3 j7 c) B+ F& t

# X2 V- R7 N- o
5 H; t$ ^7 ^! ?9 t% g% oimport swarm.objectbase.SwarmImpl;. H  ^) h( T- t. _1 R2 H7 ~7 p- e
import swarm.objectbase.Swarm;
7 _: j1 Y7 A6 p& v1 e* U0 T1 uimport swarm.activity.ScheduleImpl;
& F) b% y% w" ]7 C! f9 zimport swarm.activity.Activity;. d; J" v" k/ \" E3 _  ]6 L1 p
import swarm.activity.ActionGroupImpl;
. y- k/ I3 l% H) m. z: f4 Yimport swarm.collections.ListImpl;9 ]0 G/ a# u: G
import swarm.defobj.Zone; 6 Y" Q1 G6 g7 a$ D
import swarm.Globals;
! s6 B: C9 i) V% Y/ B" i- A" Bimport swarm.Selector;% j' T( L: K+ ~
import swarm.activity.ActionGroup;
6 N& k% M. d: n8 h+ wclass Agent {4 x$ R4 s/ U# ^5 Y9 R
        char id;
1 @3 U' h- s/ i/ L0 g: A/ G& z3 u8 S" T/ S3 j
        Agent(char id) {8 Z; Z$ ]) x, H5 ~6 I) ^
                this.id = id;
" n- c  X" u" U' ~        }
$ S. U  E5 @; _: p% _+ Z9 I$ b  e+ Z1 e! q; [
        public void agentStep() {
' R, Z# ~0 q1 \) r6 e8 M                System.out.println(id + ":" + Globals.env.getCurrentTime());7 c' f9 i9 O0 K
        }9 z" e1 r  @+ x7 H0 o& B+ e
}
/ p1 g5 i) [4 {; _+ u7 b6 w
' P6 O1 s& Q& T4 C9 K# `; Rpublic class ActionGroupDemo extends SwarmImpl {% g" c3 B/ `$ {2 G) G7 `; r7 H
        ScheduleImpl schedule;0 h: E; i) D% w8 O' c8 v9 V
        ActionGroupImpl actionGroup;  y3 Z0 }5 ]: K. n8 c% F: a
        ListImpl list;
' D( }2 |5 h/ I4 i9 D- |; E        char Id = 'a';
0 e: O. t/ ^! F2 A$ F& \  ~! P7 Z2 u) [5 X% p$ p8 ]+ S4 P6 A
        ActionGroupDemo(Zone aZone) {
/ Y4 e# S% @3 q/ u0 S8 n3 t" [+ H$ q                super(aZone);
6 [8 u& O3 h2 }: f: e5 f. a/ E' T( R                list = new ListImpl(aZone);: d; h# S5 B) j! s! s, C
                swarmSetp();
2 P: ~; V7 i9 j5 X+ N  K  a/ m                actionGroup = new ActionGroupImpl(aZone);( T) t. U/ F- J# }/ R/ H
                schedule = new ScheduleImpl(aZone);
# L$ @/ r# N  V* w5 [! U; f$ F7 L                try {
+ D  g8 Q4 c2 O) ^2 r/ i% q8 K3 t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  E9 r9 S9 m% Y3 g) Q3 z6 d/ R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 o! y7 M6 y( @/ f
                        7 Y7 M( _7 `! @2 D3 S
                        actionGroup.createActionForEach$message(list, agentSel);' K, f5 s' F& s0 e* i
                        actionGroup.createActionTo$message(this, swarmSel);
; n8 C+ J+ M9 W( W                        schedule.at$createAction(0, actionGroup);
% L) f( |7 l0 k) e6 V" ~                        schedule.at$createAction(1, actionGroup);8 L% ~" T, z. d! e) D% _6 `
                        schedule.at$createAction(2, actionGroup);) t- e% X( x+ z, e: X

% F4 V/ |7 |3 @8 m) D                } catch (Exception e) {
3 L% ]' x5 U( ?+ H3 k                        e.printStackTrace(System.err);
6 H; |/ s# m- R9 g                        //System.out.println(e);) A  w$ e1 R! _+ X
                        System.exit(1);
8 u! R2 B+ d! Y; C. L; D/ X6 T                }5 D$ P8 J5 f& s. f$ {; P

9 ~# P7 n! B+ \/ e, G7 a; L+ Z8 B  G, g) C: W, z( G% i: P! v
        }" d% I  m1 l  b- [" w/ T7 E: w+ e; R  e

* ?7 e6 q: h) y! e5 ?/ X        private void swarmSetp() {
/ C8 `$ G3 F  C7 v+ f                list.addLast(new Agent(Id));# `3 `! v! n4 c) S" }# E! Y
                Id++;1 D% d5 E- y/ ^
        }
# I" ^9 |# Z8 K% c/ W
8 t1 K' _% K1 {1 A        public Activity activateIn(Swarm context) {+ G/ v$ p' O0 E/ \/ P' n: U" K8 i
                super.activateIn(context);
1 b$ ~* l2 h" {+ O% u8 v                schedule.activateIn(this);
( _: z, q, U# D5 b  Z4 @0 r& u                return getActivity();
6 p( ^/ Q- t" H7 F" j: j( G+ h        }
! L6 |; s1 h" q; B% x: k0 j$ F5 R- {# j
        public static void main(String[] args) {9 H1 b$ I$ @$ K* k0 m, @
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 j- r+ r0 |0 O& ^/ p, v! g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! m9 o, O3 P4 B+ g7 ^! ?- I& a                swarms.buildObjects();& U$ S. J, _, f4 @. m# Z& j, }9 L
                swarms.buildActions();; ?) D. o+ \( f& f; ]1 H
                swarms.activateIn(null).run();$ Z5 `6 i8 l; D) C; C/ _4 y8 M: Q! `
        }+ V. J7 P2 v' P& {1 A/ J- T

: x/ X4 E$ v7 ]% j" M3 a9 H0 C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-1 14:22 , Processed in 0.017055 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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