设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4884|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& c# ^6 r9 E5 M' V, Z8 b
' V; b' i: x, W! p6 I: Q3 F$ [, ~" k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' J/ ~2 \$ I# J1 H1 r% e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." c5 e  f, T3 i. s8 P& k0 b& x& K5 x6 T
swarm.SignatureNotFoundException3 P5 w0 l4 H5 Q% C2 e; l  j* ]7 W9 c' h
        at swarm.Selector.<init>(Selector.java:76)
# e2 X) [( f0 u: ^  ]' F" u2 c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 t/ B$ q. l7 ]! |. l4 o5 l4 s* W        at ActionGroupDemo.main(ActionGroupDemo.java:67)# o4 D3 l5 ^. `. O

( L1 o5 W' k- O. d' ]# x. e
; [4 m8 _  R& m+ y  a! L# L  ?1 `import swarm.objectbase.SwarmImpl;
0 D( R9 z0 n2 B0 `0 N( Fimport swarm.objectbase.Swarm;# ^1 u/ M9 R1 {6 A
import swarm.activity.ScheduleImpl;
- k: i0 P( ?: g) Aimport swarm.activity.Activity;
. k' A7 \7 j/ [/ yimport swarm.activity.ActionGroupImpl;1 j: ]* Z( i1 V6 m9 [( M5 g
import swarm.collections.ListImpl;
9 Z2 x* Q3 ^& y6 iimport swarm.defobj.Zone; * j4 s; w$ D; E, X$ }9 W
import swarm.Globals;/ ?0 \) D* W, g! v( \  s+ P
import swarm.Selector;
) G/ Q& a; m8 P  Aimport swarm.activity.ActionGroup; & ]9 `) D6 A4 [% y6 d
class Agent {
" w/ x: m2 b5 r9 H- ~        char id;. \3 }& H" Y7 ~9 ~3 Z
3 x, P; H( x$ W8 \$ t5 K9 ~
        Agent(char id) {* {, J) }: M- X% z+ ~
                this.id = id;5 p" \! ?. x; R; K
        }/ J1 J) E' H6 E. z5 [6 B
; A* n8 `1 L4 @5 P
        public void agentStep() {
3 z3 A& @- [- M1 O. f                System.out.println(id + ":" + Globals.env.getCurrentTime());" `# z4 q! y* Q/ i
        }
1 h4 ^% x; P. y) `}. a( E% N; O  w5 c3 Z$ D! w, ?
& z9 H7 `" O9 {  S
public class ActionGroupDemo extends SwarmImpl {% e- O' Z- f' {- M
        ScheduleImpl schedule;
2 a# e% N2 L' X& y* q        ActionGroupImpl actionGroup;0 E1 Q5 M0 Y0 z' W$ J+ X4 S
        ListImpl list;1 u. A: e) \1 m. B, \2 U' }( t
        char Id = 'a';, V7 N6 A0 n4 [- z$ ~+ L

+ W0 x* i) P# ^7 _6 u6 T% m% H4 L        ActionGroupDemo(Zone aZone) {  `2 J7 J' Z! W! Z8 N" w, j  k) [. N
                super(aZone);# W& q4 A! U# d+ N
                list = new ListImpl(aZone);
; @' F( {0 }" N/ f8 a                swarmSetp();  o. i2 }2 T/ E
                actionGroup = new ActionGroupImpl(aZone);) c$ j+ Z& L8 k: A
                schedule = new ScheduleImpl(aZone);+ I5 F6 ^" X+ t; @' M: y% L& d
                try {4 b; I: q" U3 R  j' K6 b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 r2 S+ S7 k, v/ p: p  |                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' E" C0 ~0 T1 w4 |                        
7 j3 \! i. K+ `+ A$ H                        actionGroup.createActionForEach$message(list, agentSel);
* q, H/ a, r. j7 K- Y4 U                        actionGroup.createActionTo$message(this, swarmSel);( m0 J* W& n& k# |" }( y
                        schedule.at$createAction(0, actionGroup);
/ C/ t6 v. a' r! Q2 T& z9 n                        schedule.at$createAction(1, actionGroup);* c. W& p& c; c7 I* I
                        schedule.at$createAction(2, actionGroup);
3 J  [. I2 c$ O* s0 \# k" L3 J- ^
                } catch (Exception e) {% N( Y2 b; Y. U- M1 [
                        e.printStackTrace(System.err);
, ^! s1 M" O4 S  z                        //System.out.println(e);
( ^& t. a. h1 |8 T7 t8 V7 p                        System.exit(1);3 X/ @2 e* d  ]- _2 g+ Q
                }) l# S  t, C$ i7 K0 _
/ j& F2 d- g3 W3 E% p1 K

  `* G% G* v' r  C7 B/ H" V        }
9 [- B& P6 [5 Z2 O" S' Y5 D
; J# n6 b: b6 ?* R) D        private void swarmSetp() {3 D- n8 V4 P: {# Q+ F  T
                list.addLast(new Agent(Id));/ y% Z& J% F3 A2 T* C4 Z, b
                Id++;. E3 ^2 `* m5 t  T/ x1 `8 B
        }
( V) ^  n+ ~: Y; N0 h: X1 c) P! j% p5 e. K9 P
        public Activity activateIn(Swarm context) {
* y; Z. }8 f9 l' }                super.activateIn(context);4 d0 K; z1 y0 u- t1 {; S9 @7 r
                schedule.activateIn(this);
# D0 T& M6 I5 Q5 i; L. [! j' F                return getActivity();
* }/ }! r/ t3 F1 y        }
; ]9 u" S+ H! Q, _& [
+ U2 m( \5 K' A% l- p        public static void main(String[] args) {9 G* u0 c/ n  `6 m  E" I( o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 G. y' i, T( c" m' y4 U, n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 K- H1 r+ X9 Q3 c% B
                swarms.buildObjects();
( a, e$ {" _7 x% Y' {4 ]                swarms.buildActions();4 L8 W0 b. n# }, [% w' w7 S
                swarms.activateIn(null).run();
2 a3 L2 u$ H, d) \+ j( j        }& {' T; Q3 k; }6 G0 j' s6 I) u

+ e2 {# ?4 o  ~! [) {1 K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 22:56 , Processed in 0.023233 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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