设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6918|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' `' f. O+ m7 R( i0 h+ t: B

, E. z3 z6 g8 m# Z- n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% w1 y5 `7 @$ m+ w  z0 K& o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; @! D+ R5 J: Z
swarm.SignatureNotFoundException  d) U1 @* }& ]- ^' N( h+ ]& Z
        at swarm.Selector.<init>(Selector.java:76)/ `$ ~( p6 q: f& O: a& O0 {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 S7 a6 q8 e& u! \* e3 L, J        at ActionGroupDemo.main(ActionGroupDemo.java:67)* e- ?  g) A# z- O
, R& w( n+ Z* \8 b6 g' U

0 ?: w3 }4 ?; h( ^! Bimport swarm.objectbase.SwarmImpl;
! p( V% @- ?9 J2 O! v, @# ]import swarm.objectbase.Swarm;. h2 C- L+ q, U; t+ d
import swarm.activity.ScheduleImpl;
2 \) V$ d2 e3 h& vimport swarm.activity.Activity;$ q2 k: r: ?7 D0 }# F
import swarm.activity.ActionGroupImpl;
) d- Q# |* T  k# Timport swarm.collections.ListImpl;
; `/ |& E* C$ R+ s( K( p: c3 Cimport swarm.defobj.Zone; 5 [6 k6 n- G" `# M
import swarm.Globals;
6 X2 X1 u6 M' `) aimport swarm.Selector;* @3 A7 B. O1 g+ D7 m1 r
import swarm.activity.ActionGroup; ) P8 D/ s8 l4 }' [5 @5 P
class Agent {
- L) c) {  a  ]8 F        char id;
$ x0 ?$ r+ i  ~$ a, f6 r5 E9 i- [9 M" m! L* `, k' y; y
        Agent(char id) {) J8 E/ n7 l% T" F* Y
                this.id = id;
. I; B' i3 z' z+ F! b        }' t- [0 S: r0 o

8 j" J' e% ]2 D& J: ~" u        public void agentStep() {6 w4 K) e0 B# L9 h
                System.out.println(id + ":" + Globals.env.getCurrentTime());: W- f( [2 X/ N/ o2 z2 R
        }
& U5 [2 h2 u! b5 A+ P0 [, R& G/ [4 A}, H+ t( Z5 |+ v

/ v) O3 `+ h; `' tpublic class ActionGroupDemo extends SwarmImpl {
* k% f3 g+ [8 \        ScheduleImpl schedule;5 }! l) O$ O0 I8 W
        ActionGroupImpl actionGroup;
* H  }( Y0 ^% P, j        ListImpl list;
. k8 w5 A" T2 |: \/ N9 l' B  K2 d        char Id = 'a';, s( P8 Q3 U+ ?+ g' u- G+ c+ g

& k/ F, k6 f$ \( L+ o' E        ActionGroupDemo(Zone aZone) {
4 y3 \6 P( S: \                super(aZone);3 ]+ ?1 d4 y! R3 B+ \5 L% ~
                list = new ListImpl(aZone);
3 e5 I3 x6 }8 i                swarmSetp();
/ ]6 x. o8 k0 T                actionGroup = new ActionGroupImpl(aZone);
: k( ?5 [2 P9 }) T* V; S* q3 t  H                schedule = new ScheduleImpl(aZone);
. E5 }& `$ ?1 M, @: ~% o/ I                try {
3 }( e6 [& j4 P3 ~4 L6 z! O- l4 H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' P5 M  q0 {2 _) F  C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" K! i; Q5 @# ^1 ^# z7 K
                        
* J) l  W! w# C4 f3 w7 C2 `( f                        actionGroup.createActionForEach$message(list, agentSel);
1 m' Q+ V4 R$ y, u: g                        actionGroup.createActionTo$message(this, swarmSel);
5 M* \# ^" m' b- P- i/ Y                        schedule.at$createAction(0, actionGroup);
, g! o7 j. H+ `' [- A1 V                        schedule.at$createAction(1, actionGroup);
0 C. ^" b  J- U7 d' x4 x                        schedule.at$createAction(2, actionGroup);& R& ]( y4 b4 I0 O

4 G) `) Y. M; O% x8 Q, ^: T' A                } catch (Exception e) {
+ o+ `1 j# i/ P* o                        e.printStackTrace(System.err);
2 m& f4 p$ H" ~! l% t5 ^                        //System.out.println(e);% q8 ^! ]- o1 ^
                        System.exit(1);
$ v) `& n& z+ r* {; W# K                }
! D7 w/ H6 |; Y2 A, r0 [5 y- \/ V( S! W# w8 A& Q; o
6 B0 _( s" H0 X" K  o
        }  f3 a6 w/ n' F

5 A  w, s2 ^! S) j2 ~) [        private void swarmSetp() {+ x8 C/ a" D$ w" b; u& @7 Y8 Y2 h
                list.addLast(new Agent(Id));9 e" N- ]) e* D
                Id++;
* h3 |2 d4 }) o# r9 ]: n/ n7 R% a/ o& l        }
* Q4 _7 k8 R" J/ k
; H) [9 U) t8 r4 ?* F2 j. ^( g        public Activity activateIn(Swarm context) {  R; D% U9 B4 Q% O# W
                super.activateIn(context);) P# g% o. N1 u1 q: `! ]
                schedule.activateIn(this);0 D9 W6 j* ?# D7 X& z/ j
                return getActivity();
" g0 a" p1 u, i* W. R4 n* I        }( ?6 l* Y5 T1 q

; `8 L! T( X2 P9 T/ Y        public static void main(String[] args) {
. Q. X# b. @/ y1 U) [: f( [% R7 D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* }; ^5 m3 M( u9 a5 u/ a% g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* O! }& y4 V0 f4 o6 J9 z7 e7 Q
                swarms.buildObjects();$ S" K& v! K1 T
                swarms.buildActions();
3 ^7 w7 o8 S+ z8 A4 M5 ?5 y/ u                swarms.activateIn(null).run();8 c9 u2 I9 _' f( I
        }
2 }3 b; L9 t! C. p) j' h( ]* P; r
$ `' V7 }/ S+ T0 x$ A8 N/ {# g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 09:32 , Processed in 0.013665 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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