设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12522|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 ?  D9 c# |9 Q9 G

4 N2 |5 n/ S% P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 _1 v" |7 o$ G7 G9 ^5 S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* Y4 }" s; z/ T0 q7 f% j% j
swarm.SignatureNotFoundException
5 S4 f- g6 n6 J' [' X" w        at swarm.Selector.<init>(Selector.java:76)
/ T  _. x' {% _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& V0 f1 b# \+ X' P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 @2 B1 |8 Y; B: e2 D

* |% t8 }, R' V" S1 I& o/ B
0 ?- S0 M* S. K" limport swarm.objectbase.SwarmImpl;
0 U# k1 [# Y2 R: iimport swarm.objectbase.Swarm;
- Y$ m+ r3 K# J5 }4 Cimport swarm.activity.ScheduleImpl;
& ]2 ~* f5 ~" Y  N( zimport swarm.activity.Activity;
' ~* H" h% }) N- }) `import swarm.activity.ActionGroupImpl;
6 p. ]% n7 b6 W+ o0 oimport swarm.collections.ListImpl;
2 ?6 v2 ^! z6 C) L9 a0 r" J$ U( pimport swarm.defobj.Zone; / S" s( T$ g6 g8 X- D3 h
import swarm.Globals;* X/ j* x9 _& M7 U( c
import swarm.Selector;
; n* l& \( F- c7 h# I$ n: [import swarm.activity.ActionGroup; # x9 {  G2 P  `7 |
class Agent {/ y$ E, ]/ _$ j5 A5 A
        char id;
3 \* b/ V7 `* o/ h/ h, g+ B: \! V8 X: q. v; W: e
        Agent(char id) {3 H8 N/ i4 ], z
                this.id = id;2 |( b5 r9 M; S
        }2 G7 Q- `  ]/ g
9 W# [! c, E* n; C8 U4 c
        public void agentStep() {
3 f* i0 ~. S( }9 j" Y                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ T/ `) M) L  E8 M. g3 [        }% l: \, ~5 y8 L7 t" t
}
* T- e. I! @( {% d
! F% V3 ?, B2 O8 q7 C2 upublic class ActionGroupDemo extends SwarmImpl {0 l! [! O$ O' h2 U0 L0 m& [/ g
        ScheduleImpl schedule;
$ S: h+ E' ]  l& }        ActionGroupImpl actionGroup;
2 e0 ?- n4 f. ]        ListImpl list;
* z" u# a0 F4 A- M        char Id = 'a';
4 r9 q. B, z  p9 F( @" O$ I
0 g# j! u$ o0 |" }6 X, A, `5 o        ActionGroupDemo(Zone aZone) {1 @9 x. t0 Z) ?5 r5 \
                super(aZone);  e3 m; [9 x9 }( I' {; Y+ b4 F
                list = new ListImpl(aZone);
. }; `- u, J; i# y. o                swarmSetp();
/ Z0 k3 u, r8 s9 R& Y: y" e' z9 o! I                actionGroup = new ActionGroupImpl(aZone);9 w# u6 p- I) w* @" A0 y! _
                schedule = new ScheduleImpl(aZone);5 h1 M, C5 Y1 W8 M: N& T2 U
                try {
' H$ f0 W: E$ e0 C' Q$ f                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- \6 w8 I3 v0 a6 r
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 ^5 I: H' s4 G, x; P( w
                        - I. G" l6 ^" S( H1 x. g
                        actionGroup.createActionForEach$message(list, agentSel);
  x% c1 j: H4 H! Y  T                        actionGroup.createActionTo$message(this, swarmSel);
& @: }7 X# H/ I# y0 w  `3 S) A% ?4 w  e                        schedule.at$createAction(0, actionGroup);, R* E5 M1 e! F/ y, S# {5 ^  p/ c
                        schedule.at$createAction(1, actionGroup);' |! Q/ t: i- T+ i& p( d6 A
                        schedule.at$createAction(2, actionGroup);  h, _$ h* L3 e
: x# H  }! u( I+ n1 x2 Q
                } catch (Exception e) {( v- }& i3 s2 c( g
                        e.printStackTrace(System.err);
- R# s8 p+ d6 {5 B3 j                        //System.out.println(e);
! J& i0 N) G6 ]! Q% t2 _" G                        System.exit(1);
7 s. x5 u4 N! F' {! H2 J# {                }8 w# R- G: }( U9 @# ~

# {2 H2 f2 K" D2 O' g0 K5 i' _* ?  X7 ^' r' t# `
        }
+ i8 l. H0 M4 W" I' d' N, v8 e- F7 w$ c" c5 s2 Y
        private void swarmSetp() {4 X, [2 {7 s) j0 l
                list.addLast(new Agent(Id));
2 t3 M3 o- J2 r+ B1 W9 k* T. a                Id++;
; J% c' G  i: L  J* Q        }
4 x! E# s5 H+ R  P
: H1 ?$ _* h2 w        public Activity activateIn(Swarm context) {- a, M/ }/ \4 X4 v
                super.activateIn(context);" i. V0 I7 f  u2 O
                schedule.activateIn(this);
( {) _! O( [0 A! u$ U- }: i                return getActivity();" n% N. O$ M$ S2 y
        }( K3 M/ S6 S9 g9 \% h* }) ]: G; ]

- [  i, d$ {/ X3 N1 P" y        public static void main(String[] args) {( q2 n+ t0 Y$ y7 t. o+ f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& y" N6 H% a; Q5 c" l+ D( \4 ?# Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. e5 g; d+ l* X. j                swarms.buildObjects();& c% }" K! N* C  c& A, o6 y
                swarms.buildActions();
& e( O+ w/ q; q: N                swarms.activateIn(null).run();
2 I8 w* ^+ J7 n9 |* U, b! k+ J        }
' X# y. m1 r6 ~) Y! U; S* e
7 y6 ^: X6 a- @( O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-11 05:02 , Processed in 0.020612 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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