设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6525|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 u" H* }3 s7 q
) y! ?+ Y7 y3 C' m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ }5 |) V0 |# H4 s# y: ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ Q8 U$ e7 M7 i
swarm.SignatureNotFoundException
5 e5 z) w: a( i) @$ y$ p        at swarm.Selector.<init>(Selector.java:76)3 D: O( t+ p6 P( t7 [0 d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 s; K, B% O0 Q" W' F/ a; S% D( T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! `! g, a0 n# ]% ^
$ @4 R; k4 m3 j, s8 T& c

% E" P* N0 Q6 c. vimport swarm.objectbase.SwarmImpl;3 {4 G/ G3 |( x
import swarm.objectbase.Swarm;
) d7 \! u0 G% [import swarm.activity.ScheduleImpl;, S( \& d' r( L; K  n! j* W, b1 j
import swarm.activity.Activity;9 v3 F/ [. F+ X6 F* d- X1 h
import swarm.activity.ActionGroupImpl;
! L9 b; P1 R: P4 b/ Q$ {8 simport swarm.collections.ListImpl;
7 H7 o( u, x! Z( `import swarm.defobj.Zone; 1 \5 O, C+ m" e. b
import swarm.Globals;0 w, Q% n* V; w4 u( y
import swarm.Selector;
$ ?( q5 Q+ c9 i  X! A7 Jimport swarm.activity.ActionGroup;
/ m0 U: C& G7 w5 `, V/ Y3 kclass Agent {
! K/ P+ [: [- F. o9 d1 B* w" F' F. l        char id;5 X7 O. P! T# I5 u; ^

. i* c# g/ V+ X" t) v& s/ r' z        Agent(char id) {( l6 i2 ~% l; N0 R% l
                this.id = id;7 e1 X. A& @8 P
        }
2 x) X3 n  M; ]7 \# p3 `
* O& H. R' p# u) I        public void agentStep() {7 Q. a2 _8 w' V& @6 B1 i  R( c
                System.out.println(id + ":" + Globals.env.getCurrentTime());, C  X% Z/ E& I4 [/ r3 B
        }4 Z: i/ E, b# ^; p7 _+ x
}- q8 G* D$ o8 S! J2 W3 i

# O5 m. [. R4 N7 n' @; O' S; Ypublic class ActionGroupDemo extends SwarmImpl {
  T& c% M' J, ~# J2 Y        ScheduleImpl schedule;
1 ^2 H0 Q" o4 ?9 A( ~& N        ActionGroupImpl actionGroup;
" ?) R9 N4 X; Y! R) i        ListImpl list;
; d; A; z; V: p! p) c        char Id = 'a';/ T8 S$ q& l$ P6 ~3 j  ^8 U

4 F1 p+ Y5 ^7 O8 t8 F' d        ActionGroupDemo(Zone aZone) {
$ O$ k; o  P0 f, A1 u- Q                super(aZone);: _6 }+ e" ?/ j& H' E' S, g2 n
                list = new ListImpl(aZone);' d; ?7 G% B" E% K
                swarmSetp();7 f+ R7 o; X& Z# V! y% @: o
                actionGroup = new ActionGroupImpl(aZone);
0 C+ d- l0 x0 N$ m* J                schedule = new ScheduleImpl(aZone);, `* U* C# Z% T1 U" e/ O0 N$ a
                try {* w3 e) q( _# z( o; V- y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( _3 q+ m# z! F0 c" T' j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 l3 |. ]% {$ c, |8 M8 s0 K
                        
! Y" ?" l) g9 o1 M# T                        actionGroup.createActionForEach$message(list, agentSel);
: N0 P) }/ H' I4 d; `4 X                        actionGroup.createActionTo$message(this, swarmSel);9 g& @6 r. U+ ]; b* M0 }  r
                        schedule.at$createAction(0, actionGroup);
5 y4 ]$ O' Z- B# t                        schedule.at$createAction(1, actionGroup);
4 ^; I, y+ A5 P/ q. j0 G; S                        schedule.at$createAction(2, actionGroup);. f/ ~! N# R- s$ H. C& {

8 U, c% p. t9 T" u                } catch (Exception e) {  [: V) |2 Y/ Q, X
                        e.printStackTrace(System.err);( r) K- n, ^  c" U4 J
                        //System.out.println(e);0 K# a! J! m) t. c& h  p
                        System.exit(1);
8 e; R! h4 _( M$ [' ?+ O. s                }7 l  f; i  y& q0 }$ I6 Q' N
* d( x, m6 |$ T6 s% F1 R. Z6 D4 d' A

# O. s# {4 w1 N- N" H# J        }1 C5 g9 C9 W; s9 [" W0 K

3 j; F3 O" p7 j6 ~        private void swarmSetp() {
" F' C6 Z1 a. n8 q0 C9 E                list.addLast(new Agent(Id));
, l$ Z0 |1 L8 I- i6 q! U( Y( z                Id++;8 w2 Y- u$ Z( A1 h  j9 F
        }8 s9 C) @& T. M) f" t

7 w6 `* ]4 D9 c4 B5 {        public Activity activateIn(Swarm context) {0 G$ C/ J. I1 }) e: x/ G$ Q# J* o
                super.activateIn(context);4 O# |. r) n% y* Q0 Z. k+ r- w$ L' ^
                schedule.activateIn(this);
( q8 |1 U7 R4 A2 p9 _% D+ O                return getActivity();
! d+ o* M: f3 |3 Y; K        }
& Q7 S# X# t2 M) F) x* R9 K
1 n" I3 n$ Y% ?3 ]. N        public static void main(String[] args) {
3 U# |' a% @  ^  v/ n/ q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# R& d: R6 \$ `- T  ?9 ~+ \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 q  H: q& T$ A+ B                swarms.buildObjects();: _1 W& k4 H2 U  y5 O. H( W
                swarms.buildActions();
. L) J* L9 x9 O# z                swarms.activateIn(null).run();% r- j8 r2 S' G$ n
        }
5 F5 x. ~1 x  |  h$ ?0 x/ M
4 j" [- Q" v# B& i' ]: g% Q: M$ G9 I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 02:31 , Processed in 0.014645 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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