设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9518|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" T$ G4 J7 C' y8 S; {- w( o  D
/ a% o5 U- ~* {* t2 E- n+ u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 J- a8 s. R; o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- O* _: c( Q, o5 Z- d& K
swarm.SignatureNotFoundException2 v; |! G& e* U& Q) v( U$ k! o* L5 d
        at swarm.Selector.<init>(Selector.java:76)
8 }) |: I4 H) B0 q) ?, L: }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 I! }: z( j" m5 ~# S9 R4 F8 L+ ]        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, q1 @4 r5 U9 K* T0 Z
8 `0 ?  O9 J" R% ^: ]9 ]' h+ V/ i8 N: _  J5 y2 X3 Z2 Q) J: R
import swarm.objectbase.SwarmImpl;6 {: J. d) w; j# \# Z* X
import swarm.objectbase.Swarm;
6 T4 P' D' j( Kimport swarm.activity.ScheduleImpl;
/ W7 ~/ z) o8 f/ n# v# m# Dimport swarm.activity.Activity;
: f: \' ], Z4 |2 s8 \9 t& z; p  w. Eimport swarm.activity.ActionGroupImpl;
, @" j# D7 g2 O9 ]import swarm.collections.ListImpl;
8 m: R+ b  h) b2 r" C1 ^0 y  Oimport swarm.defobj.Zone; * J- y: I% p7 p) q  C% Y0 h6 v
import swarm.Globals;
: p, v! ^0 ?2 i# Yimport swarm.Selector;. f* \+ ^; \/ O2 T
import swarm.activity.ActionGroup; 1 i0 Z" O2 t9 j) j" e2 S
class Agent {
, f8 E' k, e8 X6 t5 v5 N, f) {        char id;
- {2 j% N$ i, S3 v
/ v- b2 }2 [: B' M; _4 W        Agent(char id) {
0 s" {' s! n  e' V: X                this.id = id;) U: ?& K+ l$ S$ o* L: F7 G
        }
8 b2 Y6 }" l0 f" d$ u& R  l! U! {7 X
        public void agentStep() {  [) r0 z1 r2 n2 H
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  y/ G3 B" v$ L) A3 b/ L& v        }7 K" V/ H4 W  `
}8 T7 W0 G" ?: |! m" C

. Q& b* o! g' Z3 Ppublic class ActionGroupDemo extends SwarmImpl {
: r2 ?5 a( R" O" \+ B        ScheduleImpl schedule;+ I4 q9 o# N- A7 b' ?
        ActionGroupImpl actionGroup;% _9 Q- u! p: y* q4 l
        ListImpl list;
5 {* D5 t7 Y0 J, f  G& K4 q  _        char Id = 'a';9 Q& b( C: Z) L  u& V1 E4 z  w
* r5 \) `! b8 ]$ E7 {
        ActionGroupDemo(Zone aZone) {
5 f9 M  k  i; n9 W: v                super(aZone);
2 _4 K  |" v5 f                list = new ListImpl(aZone);
9 `$ c$ v$ Q/ Z/ F                swarmSetp();
& k9 i7 R5 a' F  x& F. O  u* D                actionGroup = new ActionGroupImpl(aZone);$ e% Z1 @7 N8 W7 V5 v2 X: I" Y6 p
                schedule = new ScheduleImpl(aZone);
1 m* m; d1 a# R. [0 `                try {
9 q5 W, ~( _2 y8 w4 Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 t- ~- g! u9 k9 b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: L+ n( D% @/ l                        
! e, f8 k5 S6 |/ P6 V                        actionGroup.createActionForEach$message(list, agentSel);
8 s& d: a8 W$ @; m                        actionGroup.createActionTo$message(this, swarmSel);; X& O! Z, J+ ]# W: |0 ~, S
                        schedule.at$createAction(0, actionGroup);
: w. _: g, b5 s7 b                        schedule.at$createAction(1, actionGroup);7 q/ J$ P- x" U+ ~; U' ~
                        schedule.at$createAction(2, actionGroup);
- Y7 P8 f. ?1 @' Y$ f, M0 N7 E
  y5 }% t9 X" f                } catch (Exception e) {
# I# Y' n% J8 F                        e.printStackTrace(System.err);/ Z. l4 \# k* ~
                        //System.out.println(e);
5 X* u8 x2 O9 h, Z- p# a                        System.exit(1);
2 e0 c$ P1 R9 f  Z" F                }
. ~" g8 o3 K/ ~6 y+ E: y# K4 d  C2 u8 B3 u0 e' q

$ O  q9 z, M! H! X        }2 O7 \/ h5 h  p
0 C+ f* F+ `) M8 F2 v
        private void swarmSetp() {+ a) q+ U7 g9 ~! ]
                list.addLast(new Agent(Id));
* K! S( g/ d' r; {7 u2 `. |5 P; c                Id++;) t3 W/ p) H- e0 E8 h0 P
        }
- N; n0 d1 `$ N6 t
8 w0 Y$ @  a: i4 K$ R5 D        public Activity activateIn(Swarm context) {) d6 ^; r7 E7 A7 `; S
                super.activateIn(context);
& j" ?# s9 ?+ E) U                schedule.activateIn(this);4 N" [+ X4 O. x( E
                return getActivity();2 Y4 t: H. w* \; \* D0 y% r6 j. e
        }  [; W- u! R, U- z( z- I) K3 |
" |$ {7 m/ K* [) {3 l: E% {
        public static void main(String[] args) {" y% e( n8 |% w7 ^+ @. s1 i% ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 z$ ^5 ~/ T& ^; |5 |2 _. W# d
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 u+ {2 }/ j, P( [" e7 ^
                swarms.buildObjects();
# [  |6 G+ j$ r% b: ^. a                swarms.buildActions();2 m  ]* }, o: B/ J8 v
                swarms.activateIn(null).run();$ A% F- k/ [$ G9 F& S5 G& p% ]3 p7 t
        }) M" N* Q: Q+ _1 `2 s6 f

  a8 n1 i& j# l3 O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 14:20 , Processed in 0.014990 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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