设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7799|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 \  m$ x4 {# c% N- b' W$ G4 `: I, i3 O) `2 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: K# d0 L" v0 i+ ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ p" _0 x; B; K
swarm.SignatureNotFoundException6 k7 O4 L8 \7 b  q& `0 {4 |
        at swarm.Selector.<init>(Selector.java:76)0 X; g& U1 g' @3 @% _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- e- T- `9 f& _        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' J, I! F6 {5 Z: {, H" [3 a% V) o2 J9 {" ?8 V

) d) s8 n% t+ p+ a1 F' q% t+ j4 R% C. Kimport swarm.objectbase.SwarmImpl;
* m8 P/ p6 u8 y. b$ R! H- Iimport swarm.objectbase.Swarm;
7 `  s. J0 g9 o- P5 @, zimport swarm.activity.ScheduleImpl;) e9 p/ k5 b$ B' O7 L# l: x
import swarm.activity.Activity;7 V1 U, |4 Y5 X0 l* F+ u6 E& @- c, J
import swarm.activity.ActionGroupImpl;
( N% f: F# w: ~% _* vimport swarm.collections.ListImpl;3 }7 L4 j$ J9 Q
import swarm.defobj.Zone;
9 x3 V- _9 {2 mimport swarm.Globals;
% d2 x1 g5 v, l, X% f' timport swarm.Selector;' q% r5 n2 u: @3 z" Q) H2 Y; R
import swarm.activity.ActionGroup;
9 t) y; M4 q8 S+ D& h7 |class Agent {
- W2 l* A) X& k4 G  G        char id;
% Z/ v3 T, e9 v+ \: f$ F8 W% Y( N3 ]$ l) ]. U7 P5 O
        Agent(char id) {
4 p0 d* ^5 w7 S' J$ c& P                this.id = id;
; L% b+ a: T8 G* |9 D  f1 e5 q        }6 `: b" q  M9 c$ s4 [
( A# c5 m3 X0 J3 {/ g
        public void agentStep() {* x1 k; Y: z- ?% t! t! a0 f
                System.out.println(id + ":" + Globals.env.getCurrentTime());  c6 I1 z# z* A
        }
$ q8 f* _6 K% w# T3 M( @* ^5 S}
8 S+ b* E7 C$ O, `# |3 B0 \4 f
) }  x. C+ M5 [4 Wpublic class ActionGroupDemo extends SwarmImpl {. f6 J& r& r8 \- C. t6 F
        ScheduleImpl schedule;. x. I& I, g! S
        ActionGroupImpl actionGroup;+ k- M7 o1 y  n6 V# L, \
        ListImpl list;
3 g9 M& W, h  |$ D, D- _: h. I+ c        char Id = 'a';
7 S1 s9 a# B" x" F* E: Y' y- Z8 D, E  O! u
        ActionGroupDemo(Zone aZone) {
% B" y. E/ L/ E) h; z; Q: K                super(aZone);
+ ]3 c  d. Q- n% Y* P& c2 D+ ^                list = new ListImpl(aZone);5 T1 w6 M* g. V( ^# ?, t& k
                swarmSetp();! V5 l4 V1 W8 Y; S
                actionGroup = new ActionGroupImpl(aZone);* h7 B4 Z7 W" _
                schedule = new ScheduleImpl(aZone);! u+ H- e/ Z0 p# o  u; _9 _9 r
                try {8 ^2 I5 u( E+ }6 @& P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ Y: @2 r' w( T( h: \9 B. Y; Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 C- z6 N" T# u& q; @! A
                        9 \' I$ F: }+ A: k
                        actionGroup.createActionForEach$message(list, agentSel);
& ?, @4 X! \: R  T4 Z2 H# r( E1 k$ U                        actionGroup.createActionTo$message(this, swarmSel);# t% p; T* |. U, C! H1 m
                        schedule.at$createAction(0, actionGroup);- @8 ?1 r; C; c% ?2 X
                        schedule.at$createAction(1, actionGroup);: V9 A7 H5 A" v. x' b. n5 r6 ~
                        schedule.at$createAction(2, actionGroup);
( @1 b! R/ i0 o% k; C/ i8 F& M, F3 i5 W  w, P6 _
                } catch (Exception e) {- a% e6 G" s7 U9 c, z) K' C. s' j8 t
                        e.printStackTrace(System.err);6 t# s, }5 @1 i/ I7 y6 v
                        //System.out.println(e);! l- [) M2 [* o
                        System.exit(1);
( |+ U2 }0 a5 v; z% C$ M0 v3 X5 |                }
/ d% P+ Y6 @# w2 t8 g/ Y7 ~$ N2 C$ A1 O' `$ f2 q" f

3 l: N4 [% X0 V  D        }
& {  I) u( V- M: p
- h) I7 p8 D6 N/ f! C8 Q        private void swarmSetp() {* j* ~; L: Y+ {. x9 q7 r* y
                list.addLast(new Agent(Id));! G' j$ l7 o! n  F
                Id++;4 c! u, [; E7 K) G4 ~
        }0 ]- ~" L, o# ]$ S5 y
) ^+ x+ s% B/ b2 ^; Y4 e8 Z
        public Activity activateIn(Swarm context) {" S6 Y  U& s; B+ l% O# N. l$ ]
                super.activateIn(context);& ?' S; h" e) G6 Z0 @% ]
                schedule.activateIn(this);
* F/ ]8 m9 n1 @8 h' d                return getActivity();8 \8 I5 c; b# v6 [& b9 u; K
        }
$ l" f# z" P! {% ~3 A' F; R  t5 P/ p8 }# k+ [
        public static void main(String[] args) {
7 F- x6 C/ k6 h' P' X1 P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  j" m" t' a  v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 x  b6 B0 g1 B0 X$ u0 c. b. k. H
                swarms.buildObjects();
. W9 j5 a% B" u- V! ]                swarms.buildActions();
& G: W' F( a* U, |. \- J                swarms.activateIn(null).run();
# E; k4 z) }; d' X3 a3 x) j        }
1 U* M9 m8 Q! y8 d2 V* H$ A& X+ e& ]3 c9 }8 V+ E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-15 04:59 , Processed in 0.020939 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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