设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11878|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 \$ w6 i" k$ A
3 D# P& {/ h1 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! F  {1 J7 \7 E; Q7 ?  ?% b. ?& G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." B* K  z8 {& u" g' A
swarm.SignatureNotFoundException# b: g, @- E0 x/ ]' c- q8 @5 _  u& @
        at swarm.Selector.<init>(Selector.java:76)/ Y- K6 U- h" x& h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! X  M# O. v! q( y. d  e; k        at ActionGroupDemo.main(ActionGroupDemo.java:67)& G7 e$ i! s! i1 _1 j! ^
# W% u% j% C+ ]1 N
7 h# g1 ^! I: D# M6 L: S
import swarm.objectbase.SwarmImpl;
7 o) e  {" i  m; @$ m4 t. qimport swarm.objectbase.Swarm;
6 n0 w0 \* r  @# R( M- A  {% g' x4 w% Limport swarm.activity.ScheduleImpl;* |# R2 t) Z1 D# C0 ~* m4 K
import swarm.activity.Activity;/ i- b9 N3 N9 b# e* H4 C
import swarm.activity.ActionGroupImpl;$ m7 A. j5 |7 r/ T8 a3 I4 i* B3 J* s
import swarm.collections.ListImpl;- [; C9 o2 X, Y6 p# M' m
import swarm.defobj.Zone;
2 ?& e- D& P% e& N) ~! x# limport swarm.Globals;
3 U; L- h* ~; t9 w9 Q) f/ Jimport swarm.Selector;
* y% ?/ B9 }3 K( _import swarm.activity.ActionGroup;
% r0 \6 T5 ]* x5 u2 p* {% hclass Agent {
" e- j- s4 _; n5 ^; @) {        char id;# w/ s# V- G/ T. ?9 Y+ o) i

2 y" `0 Q1 G, c        Agent(char id) {
# ?. E% D/ B5 n0 i                this.id = id;7 A* T9 w0 D8 h! @
        }
) N) o" C9 `, u+ ?) `* K4 X% m
8 \( @5 J' O. s3 c        public void agentStep() {
& y1 @! i2 x/ h' M! r# Q8 l* l# T" Q3 q                System.out.println(id + ":" + Globals.env.getCurrentTime());% R5 B5 T4 p* J! P. t$ B
        }
( ~. d. k4 P2 r( c6 [: A}8 x! Z1 j, t" F1 Y

/ q2 h7 u% G, f$ A- I% J! kpublic class ActionGroupDemo extends SwarmImpl {
0 D' O- Q; Y+ k! K6 O        ScheduleImpl schedule;
3 _. Y0 s0 F- ?/ H# \8 Y: e7 A2 L: @        ActionGroupImpl actionGroup;
5 J; V. r, `0 j5 T1 u        ListImpl list;
3 |7 O5 c; S+ K, C: A        char Id = 'a';
; K1 H: m2 ?9 u; o4 I+ `9 |- S# D  j- p. a. ~1 d
        ActionGroupDemo(Zone aZone) {
  B; d# V6 O' l. ?                super(aZone);
8 E/ i: h* w1 P* C4 b                list = new ListImpl(aZone);5 t. i; H1 R* \' l% n; l& d
                swarmSetp();( q! q: n! _$ W" l5 T3 T/ a
                actionGroup = new ActionGroupImpl(aZone);4 z; w0 U. V5 W3 G% X+ h: H: |% W
                schedule = new ScheduleImpl(aZone);8 D" h0 ~1 y: A! _' s3 D; Y
                try {0 Y7 U- h/ W3 t/ J) g, m  X
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  h. D/ y( ]0 E9 A8 m9 r( h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; D3 K  S* f# D0 \                        6 @7 G7 ^5 d4 U- P4 M% w, E5 X
                        actionGroup.createActionForEach$message(list, agentSel);
- [: b# W  \5 s4 {$ k3 x5 p$ s                        actionGroup.createActionTo$message(this, swarmSel);  E3 D8 ]; S7 D8 ?0 E* c. x$ e: E' M
                        schedule.at$createAction(0, actionGroup);/ \3 I- ~# R% ^2 x" w3 ~% g. Y
                        schedule.at$createAction(1, actionGroup);
. L" ]- x: F. p0 y3 z                        schedule.at$createAction(2, actionGroup);
3 n4 T5 s% [+ y5 j0 N4 q% J. b# @; N+ S  f" |6 C
                } catch (Exception e) {
1 n7 x9 O! X; z6 k; E* ]7 i                        e.printStackTrace(System.err);% c2 r: U7 i8 P0 d' C" E5 F
                        //System.out.println(e);( Q( p% j- W  U4 s$ i3 ]
                        System.exit(1);$ H$ Z+ e0 @# Q! D8 [6 J) c0 P
                }
& g. _4 B5 F3 x" q+ y4 A$ S/ B4 d( P% u8 a* X$ j1 {
) D2 E; s; t5 z' c
        }
' z4 r( k7 U( t. `' ?
' {. H* Z, C/ O% E; H        private void swarmSetp() {7 ~  h2 T$ p) @4 h+ {6 z+ _
                list.addLast(new Agent(Id));
- a* l+ N) Z0 x- V                Id++;
1 i/ x- \- y$ G! q* Q; M: W% f        }% e* x& e) u1 Y. O0 y/ P9 c9 ]

# i8 u& h0 j4 ~1 i0 r6 L        public Activity activateIn(Swarm context) {8 I0 O! W8 p9 t9 c1 c$ _
                super.activateIn(context);" r2 l# P6 Y+ P: q; C- {. m
                schedule.activateIn(this);
& ?( L, ^* s5 a                return getActivity();# u+ V9 g! B( K
        }
$ v. n/ ~; Y5 H: |- z/ [0 S0 x
6 e% f# K3 f) x4 p        public static void main(String[] args) {
  L* C4 R* Y6 P0 ?' u                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( T: H. d1 D8 p% s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- T1 O6 h% N( \7 U5 ]
                swarms.buildObjects();8 @$ F- X* [4 d& I! W8 b
                swarms.buildActions();
8 T& f% }4 x3 g( _5 A$ i$ L5 T                swarms.activateIn(null).run();( o' _2 j: `) E
        }1 |4 G& c3 o, F
: }6 R$ W7 M/ \' @/ M( E# K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-24 11:57 , Processed in 0.014939 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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