设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11607|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! K% U8 C! Q0 k( G  t: a
) u; M6 \- `' v3 {: F! |: h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& v9 B% a: G6 m  O2 v' {3 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ x6 a8 w" R3 I' D
swarm.SignatureNotFoundException! K. f- U9 F6 I, X2 R. B
        at swarm.Selector.<init>(Selector.java:76)6 d& w( ]# \3 }0 E' v* H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 J# u; f3 `; l& U1 Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ O3 z  x- S' ^1 r* y5 i9 q; x8 f# `# n1 L5 h1 i3 ?1 R
7 B; X1 _: v! s- l1 U/ R7 b
import swarm.objectbase.SwarmImpl;
4 x5 ]; U( d4 w! Aimport swarm.objectbase.Swarm;
# ~- s. |- s( c8 nimport swarm.activity.ScheduleImpl;
( |  m8 p0 Y, B+ himport swarm.activity.Activity;
8 O9 j. _+ H% p+ B7 W7 B7 oimport swarm.activity.ActionGroupImpl;
& v. _3 }6 |0 o9 ]import swarm.collections.ListImpl;1 Q6 R* _+ @( H7 ]7 \; `# Y
import swarm.defobj.Zone; 2 q5 v2 k0 r" }) Y5 Y' b
import swarm.Globals;9 X1 y, G( T7 q( d: ]) @% M
import swarm.Selector;* E+ O3 I$ f" n6 I0 W
import swarm.activity.ActionGroup; # p1 T: F- O) S2 [0 a: D. I
class Agent {
0 \6 n6 W' q) `! m/ }5 F        char id;; S% b$ p& J, P8 O% y6 _8 C
7 K" U0 G! |% o2 ~+ R
        Agent(char id) {# x- ?, ?; g7 M+ d+ N) W
                this.id = id;
  x, e. j) m! {. K7 n        }
2 o0 B+ O  u+ M4 h( g; w2 D7 _3 Y& O! i1 P  F
        public void agentStep() {
/ |4 c& h$ q2 V9 C                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 I: q$ S9 k- g4 _# w6 A* F, u$ o5 g        }9 a; H" ?! G' d. {, c3 g& m3 f
}
4 k+ Z8 ~7 Q3 {: u- o
# f' I6 k/ w' c. o$ B( O9 Kpublic class ActionGroupDemo extends SwarmImpl {; G8 t% L% {: i4 u- _1 L& u
        ScheduleImpl schedule;, O% N' b" u- ]  i' O3 I
        ActionGroupImpl actionGroup;
( _1 N& d- u$ J8 H9 T. h        ListImpl list;
6 l7 v8 m8 X+ V5 r8 c        char Id = 'a';
& x' n& E, G- g8 }3 z, s4 c) C' e& p* z4 a7 I2 ?8 J; P$ T
        ActionGroupDemo(Zone aZone) {! Y. f2 _- r: b! R& h8 x* Y; A
                super(aZone);
7 L4 G3 A( i. f+ g0 ~                list = new ListImpl(aZone);
8 X( Y: Y" y& V  D7 `5 K                swarmSetp();% O8 l" H2 U/ [
                actionGroup = new ActionGroupImpl(aZone);. I) b/ n, @' C0 }6 ~# p
                schedule = new ScheduleImpl(aZone);
. s# K4 D" d6 O* F( N" |                try {
* c8 ?1 U7 M& E$ Z  _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 [3 Z2 l1 f# ~$ f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& m+ x, |2 n1 F) h% A8 F& t/ {; f
                        ! S: P. H) j& W, X
                        actionGroup.createActionForEach$message(list, agentSel);
$ r: I& L- g2 |  y( V3 J                        actionGroup.createActionTo$message(this, swarmSel);
3 l6 k. X3 g* Y0 w2 G" g% Z5 z                        schedule.at$createAction(0, actionGroup);& k2 O0 ^1 K3 n5 [1 f  ^
                        schedule.at$createAction(1, actionGroup);
! T0 f+ E! l3 v. P# n. f                        schedule.at$createAction(2, actionGroup);, J$ X; R2 G8 j8 Z

) W0 w% g, R4 ^3 Q/ y# B/ N! W0 ?                } catch (Exception e) {# i7 O* p+ q$ Q, f7 {# [  R
                        e.printStackTrace(System.err);2 A4 C3 @, V, m- x9 E/ K
                        //System.out.println(e);
# N# [$ P, W3 T3 A# O9 x9 }                        System.exit(1);+ k& \) D# x/ D7 L& a' b9 U# ]
                }/ ?  W' r4 x# z  ~2 ?4 F& h
& R6 b9 s0 a' ?4 D
* Y; r: f. q& S" ^( [
        }
6 S  ^9 r0 c3 }  ^5 E6 C3 [: m5 ], j# f$ ^: l9 z
        private void swarmSetp() {
8 g5 ^+ D# p& M, h+ Q% ~0 J                list.addLast(new Agent(Id));" }0 T5 j8 p3 r$ T
                Id++;
; X" J7 m4 N6 V5 A        }
" f$ ]- z7 M" {  Z7 w" A* P4 W/ Z# _; {! ]( X, e* [! h3 L4 T3 J9 Q1 l
        public Activity activateIn(Swarm context) {8 [, R8 @* B+ w/ A1 }! G7 M
                super.activateIn(context);, [$ u/ X3 C- f6 {
                schedule.activateIn(this);# {# H# s9 e( y6 ]2 w' ?" c9 Y
                return getActivity();1 F/ {# N8 b. Q: ^" ~; r
        }
. W1 G' @% g- c. @
( H0 m  p& q7 L5 B/ {" j% J        public static void main(String[] args) {
) U! D/ z( X, P; L6 V5 V: E0 W, v8 L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ g4 L" c( Z2 u& z2 _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% P; Z7 R9 g* Z, b, t) l
                swarms.buildObjects();
- _6 z9 b" j% o3 D1 \- |7 Q" |                swarms.buildActions();& B/ N  u( S) z! z+ M
                swarms.activateIn(null).run();; o, s3 l9 i. {0 L. c
        }
) t$ _6 [, k  Z8 W) t) f( J$ f% P6 j8 e& D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 01:44 , Processed in 0.015504 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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