设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9801|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; s* w6 C: O: w5 r

0 x3 i8 j- F+ w( ^7 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 n, j' Z0 M6 d& [' E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 @- X8 G- j5 t
swarm.SignatureNotFoundException
+ E9 L: L9 o* u6 F, d: e" s+ K        at swarm.Selector.<init>(Selector.java:76)
+ i9 f7 D  g( O( c1 A' B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 x7 p9 Y! G) S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 @* M7 o6 f4 R7 Y5 z

* F! _# p$ l& ^$ I1 |
% l8 M: q5 p# l' L  yimport swarm.objectbase.SwarmImpl;) }# H' z" m5 k
import swarm.objectbase.Swarm;
% G6 Q/ }# B6 K( x+ timport swarm.activity.ScheduleImpl;
" V% C0 z6 X' g3 aimport swarm.activity.Activity;4 z' `" w1 r1 l& {+ y- F0 \
import swarm.activity.ActionGroupImpl;8 _" Z' w1 W7 w0 j+ E7 X% W( z& n) `
import swarm.collections.ListImpl;
  H+ z8 G& C. G* h5 gimport swarm.defobj.Zone; 3 O3 x/ ^! ^* O; y
import swarm.Globals;1 b; P' d5 k. n$ S8 U) u$ k$ k2 R
import swarm.Selector;
) f# w% P& |- e. e+ wimport swarm.activity.ActionGroup; 8 B9 K: ]5 H3 Q7 o
class Agent {  a9 T! [( n/ W/ x" i+ _( b- X
        char id;
7 y8 c6 x2 ^+ i! X+ H- u
, y/ ~% S  E5 H0 t        Agent(char id) {
' O0 f- e9 T: ?" J0 G8 V% g                this.id = id;2 m$ p6 u0 u  N! ~$ S3 C' l$ m9 y" Y9 y
        }
' r' o) u2 G. Z- E, T- L/ \
) w2 a; E# W+ }/ W3 F" c5 q8 y, l        public void agentStep() {
4 c- p& P- k- V' ^9 c" K7 `                System.out.println(id + ":" + Globals.env.getCurrentTime());8 U; I) }0 x3 t# O3 C- w
        }- k6 k) }. w/ A+ @
}
5 F! \; d( `0 F. {/ U+ d) A
% B9 i$ {% ~* s; N  qpublic class ActionGroupDemo extends SwarmImpl {
2 d; K' v$ L& n        ScheduleImpl schedule;
/ f9 R" @9 H- Q. L        ActionGroupImpl actionGroup;
7 m0 ?# K, _) S4 y% {        ListImpl list;
4 t: n' D4 ~* V2 E% P$ c8 ~0 ?  I        char Id = 'a';
: u9 P( F1 B7 g, c) d; H$ i+ J
! i# ?6 J! T% \; `8 Z* D  j        ActionGroupDemo(Zone aZone) {
5 O; ~2 w: J7 |( ~& H                super(aZone);
9 ^; K! t+ d' l! E# {. K/ `                list = new ListImpl(aZone);+ k+ j5 |2 w+ ?' J
                swarmSetp();. J" C% Z5 a2 |5 \; o; z0 e$ x
                actionGroup = new ActionGroupImpl(aZone);2 b* @; w1 t0 G- f2 ~
                schedule = new ScheduleImpl(aZone);* m  W1 F$ p1 A! g* d6 T1 N! c# ?
                try {
5 ?& r( |3 r* Q9 ~+ a* b7 C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" K8 y) Z  b& v! }0 p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# k6 y/ a+ ~. i3 ?7 _3 w4 D                        
  i# _. N$ R  Q" P& |' a: X" u                        actionGroup.createActionForEach$message(list, agentSel);
# _1 ]! ~* t8 w, a9 u                        actionGroup.createActionTo$message(this, swarmSel);' L, q+ o! J: S2 c6 q
                        schedule.at$createAction(0, actionGroup);/ i' @$ z6 y: M5 M7 A& m5 T- h) r
                        schedule.at$createAction(1, actionGroup);4 x" r1 ]; f7 O6 x! M+ u
                        schedule.at$createAction(2, actionGroup);: M  T: m+ Q( \

' |5 \! E- z0 H9 F7 Q  {                } catch (Exception e) {. k. H7 K, l- J9 H9 w
                        e.printStackTrace(System.err);6 T# V; J5 O% B$ k& ^
                        //System.out.println(e);
8 G0 |' u; M5 @! Y7 h# l5 h3 M                        System.exit(1);# F0 T9 |1 S: x5 K/ `. L- E+ {- \" l
                }$ x2 T3 P9 s: y3 V- w" C

, v% |( }0 V" p" W/ G6 _% u% X3 Y6 n- @% Q+ d% o
        }
8 A. `- w) z) V! y$ ^/ m1 U: O6 @4 t0 [# ^+ K4 l  ~4 e9 f& ]3 e/ }1 L4 m$ E
        private void swarmSetp() {1 E# j9 G, X2 Q: @+ r7 E0 U
                list.addLast(new Agent(Id));
, K: ]1 P/ T' c: I' u                Id++;
- F4 S0 o  U0 S3 [. ]& J! {  a        }
/ s4 l" O9 G3 D6 _8 S, A9 C. n/ P3 u, N6 X* n$ l" M
        public Activity activateIn(Swarm context) {; q* R1 o4 t5 T) a0 G/ H
                super.activateIn(context);
) H+ T# S+ J4 H! V" b. {                schedule.activateIn(this);
$ M2 n  O, u& O* N$ B7 e/ @5 H                return getActivity();
; j% J. u: {' H/ ]* p! L3 S0 S        }# H6 j# \0 \/ d! c
) ^3 t6 r' [8 A/ I
        public static void main(String[] args) {
" I, z3 i. D) T, t5 B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ D1 g5 Y$ W5 Q8 ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# W; z  B7 e0 X& E
                swarms.buildObjects();
& p6 I$ H# S( T2 ?                swarms.buildActions();( }# L2 ?9 I- R: r8 b* j
                swarms.activateIn(null).run();
6 A3 u3 k2 K9 y* D# N& R, J* G        }
, j/ [, a7 @/ A+ K$ W# F7 [
: \$ n0 K+ G+ s% c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 10:53 , Processed in 0.019415 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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