设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10738|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  J7 M; S% n! p2 ]
4 ]% i; _, W$ F  }' |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" x. E2 f  _, i) r$ U/ \3 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* M- u/ v4 j) V# f! ]+ B% i
swarm.SignatureNotFoundException
$ X- {  c6 X2 x- Y        at swarm.Selector.<init>(Selector.java:76)+ r) T; ]- l( m  g8 {! e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- y& \+ G: _: n. k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# ?" a9 d# q- y2 T- R8 C1 K7 p

! i8 A: l# P' k9 Y2 f1 X
% w) u7 N: {. yimport swarm.objectbase.SwarmImpl;$ d& F: u, m$ i+ d0 ~
import swarm.objectbase.Swarm;
! K6 n6 G; ?+ N& c5 R# kimport swarm.activity.ScheduleImpl;* J' y- Y( \: U, \# Z
import swarm.activity.Activity;2 n' Y/ `* Y9 L
import swarm.activity.ActionGroupImpl;4 U/ c% q; Q2 D% j
import swarm.collections.ListImpl;, X  t4 l6 y. i& r2 Q! ]1 {$ ^
import swarm.defobj.Zone;   d) e3 C5 e) i  a, _3 x
import swarm.Globals;
  l1 j% M! G3 T( Uimport swarm.Selector;' t1 G" d& C) }0 `: i& y
import swarm.activity.ActionGroup; 3 V( Y  g& v0 v  z* D' t
class Agent {
! Q9 B$ U$ p& b2 z        char id;+ k0 i% D& G: `2 e& ]$ V& T
' J# w: A, ?1 g1 t
        Agent(char id) {" C; c' |/ u0 g* n+ y  [& g2 V( d
                this.id = id;  s, f' x- x4 h& s8 I- C, T* a* V
        }
; O. w9 p1 ]% K* G' `; f, b0 `. J2 E  y. b9 l3 v" G! \! _
        public void agentStep() {
/ U0 d- J3 w% w/ K( P# |                System.out.println(id + ":" + Globals.env.getCurrentTime());" U& I3 _3 F& J5 Q. `% k
        }6 K0 k1 i4 k  C0 [
}
9 J4 K3 q- _  j9 [, o; x  A. l+ W
public class ActionGroupDemo extends SwarmImpl {
4 {7 ~* I- S8 ~. O3 ]        ScheduleImpl schedule;
2 _& }- V0 `5 q1 W+ l7 h        ActionGroupImpl actionGroup;
% p( |& x( l1 S# ?        ListImpl list;
: l, _! M" e0 E, k; J7 a        char Id = 'a';' a/ W/ d/ J) R8 F
" H$ ~1 [& o% t6 S* G
        ActionGroupDemo(Zone aZone) {: _4 X( m0 q; c  R
                super(aZone);3 B: P! i5 F* \  a  s
                list = new ListImpl(aZone);& R4 f7 F. s" s0 X5 z( q" S( b9 R, Y
                swarmSetp();
$ W; c+ O5 o- h/ F( g; j6 e                actionGroup = new ActionGroupImpl(aZone);' ~8 e& ~% _3 x7 [
                schedule = new ScheduleImpl(aZone);
, d8 @9 [2 T3 ^& [* X& x! k/ B5 {                try {
0 Q5 [! F- N8 i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* ]: v& K9 m' }  t: i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: Y7 I: l8 p9 C) l1 @$ G. z' X& I
                        ! T" C/ O- [2 u( {% @; F0 K5 B7 X
                        actionGroup.createActionForEach$message(list, agentSel);
# v+ h; s# L6 L" e$ P9 {9 R; V. K                        actionGroup.createActionTo$message(this, swarmSel);3 @, \" k$ u2 {7 u( a; R0 O. W
                        schedule.at$createAction(0, actionGroup);
1 U; K8 g" e$ n, p, u& r                        schedule.at$createAction(1, actionGroup);8 V0 y- j5 G; I/ t- h4 }
                        schedule.at$createAction(2, actionGroup);
$ ]9 q& _$ p* w1 Y7 j) w3 H* g  E$ D
1 C7 u% N6 c, \! P3 E5 t* B                } catch (Exception e) {7 c8 M1 G- w/ ]
                        e.printStackTrace(System.err);
4 m! _( Y$ S4 S: u, T( I                        //System.out.println(e);  W* F) {6 k" f" W5 o9 R
                        System.exit(1);1 [. b: g- |. U* ~3 @" y2 p
                }
; i& N+ e- F" {; |8 I; ~
4 T' V. t! O( z; b6 L, S  w. b3 D
, R7 c  J. L& y        }; s( o- A, p/ w( w
% ~0 T- ?5 b* L; V
        private void swarmSetp() {
3 [0 w% Q2 _7 g                list.addLast(new Agent(Id));
) F( C/ F) r! @6 k# u                Id++;  V( i9 _+ w; `! {; [
        }
1 g1 w  \/ n4 j7 O% P5 w1 o
5 p' w' D. q% E- y+ b9 [        public Activity activateIn(Swarm context) {* u; j" H; p1 l4 f
                super.activateIn(context);5 Y! V, A% O- w+ o) E7 \9 s7 C* [. O; \
                schedule.activateIn(this);5 `. ]6 r# V, b2 G
                return getActivity();
* r: I% f+ [% E5 A        }3 K  B$ S& V% Y2 s, K" X

- P; `$ f% a$ [2 _7 X        public static void main(String[] args) {
! k) N& r/ N5 Z+ U1 ?5 {2 h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 A$ ?5 o! T* F1 v# J0 S# X
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# m# Z1 p8 B) X0 ^                swarms.buildObjects();
8 j2 J; N- @+ b5 x                swarms.buildActions();* G/ B* w" t# u3 V" }; p
                swarms.activateIn(null).run();
- f, y3 X) w& j; J& W        }
, ^. b$ w5 _% ?. x
! `% q. v) e$ g2 Y3 f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-22 04:02 , Processed in 0.017207 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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