设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9203|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 b5 y" Y# `0 a' z1 G1 Y3 Y
' B# V$ B9 V- u4 b9 g' d6 P6 Y1 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) G* u6 ]' R1 K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- K" z1 o4 y8 a1 R! c: M6 T
swarm.SignatureNotFoundException
# k/ T% o0 O2 u* k* R. g        at swarm.Selector.<init>(Selector.java:76)% e: A3 W! N& d$ i" j' @/ i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), o4 ~: a$ a" F/ Y: V9 c1 k7 F9 I4 @5 x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ F# t. ?, n( Y( D) K; M2 }
: b/ b2 Z9 X* k" J  Q: n, o
. ]: @: s5 k+ t' d# @" o# D
import swarm.objectbase.SwarmImpl;5 r. J6 ]& o' _8 L8 ?
import swarm.objectbase.Swarm;! v# A! D' V! ]  y
import swarm.activity.ScheduleImpl;) ]6 {+ H+ Y$ E5 l( i
import swarm.activity.Activity;# j7 I: o, C: C3 f6 o
import swarm.activity.ActionGroupImpl;
! \! m5 z( p% w0 Bimport swarm.collections.ListImpl;
! b6 Q9 g& h7 F) s8 Nimport swarm.defobj.Zone; $ O5 C; i! o% Z0 s* [( Q
import swarm.Globals;% E' E* L; }% V! ]+ ~- C! C- y- v
import swarm.Selector;7 J6 t1 w* y3 ^/ W! j. w2 p2 ?+ p* t
import swarm.activity.ActionGroup;
! p" H9 w: c4 X8 C2 Nclass Agent {) s$ U* G; h/ q  ~  o/ v
        char id;
: B$ ~) p' C; f1 J$ q  \: \$ k9 t; U
        Agent(char id) {2 L& z. s8 i$ ~4 X8 b" h
                this.id = id;# T6 M6 Q& e* S+ J
        }' C9 J9 K/ f7 _/ C4 D5 C, c
8 [3 G: ^4 L0 M
        public void agentStep() {0 n! D& z* Z7 t- u$ X
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ o6 }, d/ v( z; R. {. |5 I5 p        }: o. a+ |! x# l8 I8 w( m
}$ p& J- L; S  n
9 g* L+ Y8 B1 |6 c8 b) }0 z7 f
public class ActionGroupDemo extends SwarmImpl {% p2 w8 J1 e: J* M0 Q+ D7 t" p
        ScheduleImpl schedule;
  ^- q* E- Y$ ]6 t2 \$ W        ActionGroupImpl actionGroup;
+ h  \; j6 j( W4 w        ListImpl list;
5 }/ Y8 X+ S: A* v+ t/ h        char Id = 'a';
( W/ V- [- N3 E' i; [- D
3 X% Y9 w/ ^& J* \+ O% m        ActionGroupDemo(Zone aZone) {& [4 j5 L& c& b
                super(aZone);
  t$ u  E, V  T                list = new ListImpl(aZone);: q: \' t, q9 Q) ]8 k* K/ Q. [8 U
                swarmSetp();: n! w/ Q9 B+ V) p7 A
                actionGroup = new ActionGroupImpl(aZone);0 k0 `; e% k' R9 b& c+ T: ]/ z
                schedule = new ScheduleImpl(aZone);+ B6 b5 B5 S4 V2 D( t- i# ~
                try {
& S: O3 K7 v) U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  c; v  Y. x6 |+ w! g                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" H7 O% {3 s5 Y5 }& i$ w                        
6 p( p& q# c4 e, U                        actionGroup.createActionForEach$message(list, agentSel);+ e7 h& G5 _- G3 ?3 u2 q
                        actionGroup.createActionTo$message(this, swarmSel);  [& J, g1 ?1 k" C9 P
                        schedule.at$createAction(0, actionGroup);
+ Q! B/ e. _  A3 A3 d                        schedule.at$createAction(1, actionGroup);
7 l+ U4 x6 a/ A                        schedule.at$createAction(2, actionGroup);# s& {# W1 B# f$ K/ a9 O9 L2 v: l: V

4 D' w4 M: k$ S+ R% C; P/ K                } catch (Exception e) {* J6 ~- a" B: F' }# R# D
                        e.printStackTrace(System.err);' u) C, u- e& ^( r6 r  `
                        //System.out.println(e);
6 \. N4 H$ x8 \, \                        System.exit(1);$ e9 Y$ }9 l  P2 R
                }. O. M2 }1 {' _  T. o1 r3 u- _

! P: P; H! s7 D. t3 Z+ M/ h8 n: z# L9 b  \2 w
        }
; a; e; r6 z. y4 F+ @
2 l+ E. k- K* ^( T+ I2 `        private void swarmSetp() {- H' R7 i" F1 Q( L
                list.addLast(new Agent(Id));
% }: l5 p6 g) V- Z+ T* P" O                Id++;0 w: |# r6 i3 T% l( Y2 l
        }
- X& H: V/ K9 H7 z' O, m. Q( b$ y' n: }& b! ^3 n8 @: a
        public Activity activateIn(Swarm context) {  \# S& X- m/ Z' U3 \% H) \* o
                super.activateIn(context);' h. I7 _* B  Q: [3 {- W' E
                schedule.activateIn(this);, [6 E7 \0 N( k, {2 W; N/ q
                return getActivity();. x1 K( u' d1 h/ k  ?
        }
) j( ~7 p# [  n0 i+ H) L. ]. _" E3 [/ A4 g7 i8 [
        public static void main(String[] args) {7 y  G* ~# b* W. c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ?4 O" j0 O9 o! u9 @0 I1 t8 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  m; H5 S* b( q6 u( c                swarms.buildObjects();
1 v5 x0 y9 t( z8 Z" F                swarms.buildActions();
) Z5 a# h) d2 o0 {' ?, @                swarms.activateIn(null).run();
) Q& |, T2 d' r7 I# E( [( J        }
  \: r! m: \8 _0 [$ _, `: y, j
) U, j2 t0 Q3 a5 ^! X% t8 r7 w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-4 15:23 , Processed in 0.019162 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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