设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8232|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 L! U9 o& v% X/ _% I/ V8 C+ O1 g' x/ I) [4 [* U0 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" g  k. D+ l% |( D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 o8 W- |% m3 c# k8 G  o
swarm.SignatureNotFoundException4 i+ o) t8 t: {/ Q* l" O9 ?: e
        at swarm.Selector.<init>(Selector.java:76)3 c$ G* C% h4 C* D1 `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ c7 M$ Z6 B0 ]. _/ S6 R. l$ R2 W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ V3 \9 y6 ?/ K0 Y0 G" H' z

6 G. [. t1 ?/ W+ a# c3 i9 L  a' {
* q6 A" J+ e" a) @  s5 kimport swarm.objectbase.SwarmImpl;
( |9 B$ Y% x( \$ \$ P4 yimport swarm.objectbase.Swarm;
: a( ~, W4 |2 _+ B0 u  nimport swarm.activity.ScheduleImpl;
  @/ T9 b3 ?& ~. m0 q' D& |import swarm.activity.Activity;8 i$ b0 C6 h1 V! r0 i4 k
import swarm.activity.ActionGroupImpl;
: K% a4 y; o0 Z* X6 [6 bimport swarm.collections.ListImpl;
$ G+ k$ w, o( e/ wimport swarm.defobj.Zone; 8 N2 b; }0 N9 \! j/ d9 ?6 v
import swarm.Globals;
% e0 v4 V) ?1 Q" Vimport swarm.Selector;6 D& Z! ]1 ~! F% o
import swarm.activity.ActionGroup;
% w0 }0 Q% `; E  D  Cclass Agent {9 }& V; c: J% @+ N3 [) o5 d
        char id;
5 K0 C5 D4 C7 @% [# K, g2 j% E  n* J; i: c# T- r: V7 n9 w
        Agent(char id) {7 c" D9 `6 a* P$ p! P# w, x
                this.id = id;- h3 p5 X8 w6 \$ K
        }8 D. H: Q+ w! Y4 W2 d" J
6 v. Q+ l1 t% k, r' h1 J+ c
        public void agentStep() {) x9 W5 e; U) Q8 C$ Q7 E" h1 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 v( V+ U: l8 {        }+ R* f! e0 }  o4 |
}
) V- [# o  Z2 H5 ?) s; ^
7 _' B# P: Z2 Kpublic class ActionGroupDemo extends SwarmImpl {) ?3 X" k! G' [# _, G
        ScheduleImpl schedule;
* Y8 G% y* {' I5 `2 O        ActionGroupImpl actionGroup;
0 l4 S+ e% D5 b# m" {        ListImpl list;8 v9 Z8 {: |6 m- n6 H
        char Id = 'a';
. h5 b; [: B  {6 @0 o
) n% V8 w& W3 K( D        ActionGroupDemo(Zone aZone) {
5 ~. s# e2 t# Q                super(aZone);5 _) x& ?0 S5 Q
                list = new ListImpl(aZone);9 t. v7 A" \' [" L
                swarmSetp();
& V. l3 e: F% K* G  X                actionGroup = new ActionGroupImpl(aZone);7 ]3 k, ~0 j) h& O3 H
                schedule = new ScheduleImpl(aZone);; l6 j" s5 o+ Q2 S
                try {# E9 m4 d. E9 \& l, k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! Z, l6 w8 k* l& o, J  @6 W  j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 ~" s4 `4 U" d$ X% N+ I# N' d                        * @" d+ e. `' h7 k: p% c! ~/ P
                        actionGroup.createActionForEach$message(list, agentSel);: ]9 N" {0 E. l# }6 Z% C( B
                        actionGroup.createActionTo$message(this, swarmSel);
- _- `8 e- u# a- X! V5 |                        schedule.at$createAction(0, actionGroup);
" [# v, z; c4 J                        schedule.at$createAction(1, actionGroup);
: a* \# k. \# |7 X, s5 l  L" }                        schedule.at$createAction(2, actionGroup);# {+ n1 G5 _; W( Y3 }! _6 i
4 U6 O" B: \; Q. f$ O) c% ?" w
                } catch (Exception e) {
3 `9 f9 Y' A- E0 r7 A                        e.printStackTrace(System.err);
; y6 K) K- L  k5 F" [- t, u                        //System.out.println(e);/ u! M8 J/ s5 I5 y6 j8 Y& [: e- [, c. E
                        System.exit(1);
& x: U  t# s5 }( d6 z# Q                }
5 T- d, V! E+ Y3 w
0 c+ h6 n) |+ h* ?' p. Q8 c, v5 I/ J! W' k- y- _
        }: R4 c+ j0 `0 V8 J/ s, y

7 P0 H: E7 y- X/ g* t+ m        private void swarmSetp() {& d6 L9 l  M9 M; M
                list.addLast(new Agent(Id));
6 b' {  S7 R5 |# |                Id++;, E! R  C$ V- I1 M! F; O
        }
1 K0 ]$ Y( c, g$ W2 ^
  O/ Y4 E& h# Z* ?        public Activity activateIn(Swarm context) {
9 g0 n. S8 s- w% K                super.activateIn(context);5 p; ^3 S/ i2 N, v* a
                schedule.activateIn(this);* [! r" c5 H# g% D( M% k
                return getActivity();( ?. ^( `4 Q2 l. Q; r2 T
        }
9 ]; p0 r1 \% t- S$ n
! `% @! w5 {6 ?& u6 z4 k        public static void main(String[] args) {
* B3 _# J4 E- v) I; y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: L1 P8 |* P5 _4 v5 s& a                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ f, n2 b; S- p: u: d. F
                swarms.buildObjects();
; @: ^: V& _8 B$ e, V: u5 V                swarms.buildActions();+ Z- ]; O# l% k0 B6 K
                swarms.activateIn(null).run();1 V5 A) i& l- m* H: ?
        }
$ A4 w- V$ Z, O& O2 _5 y# _. o  S/ |3 Y6 I$ j7 n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-4 06:01 , Processed in 0.021717 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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