设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8466|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 z$ g5 e" B" D5 F' v& f+ H6 ?1 O# D

! P5 U7 D) d- u+ o& K3 [4 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# h# \9 [9 J. b3 Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ \: k; z) t, D/ L6 \* U
swarm.SignatureNotFoundException4 R# R3 N% V' C3 |' e' |
        at swarm.Selector.<init>(Selector.java:76)
% q1 K' x4 ~5 X" E! Q2 `8 b( L        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 v/ [" y# g' |7 C1 j' M8 |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 }" |& l8 c) ^+ e/ j8 ?. j: W5 }
  k- V3 ?/ F9 V3 H# |8 h6 l$ R
, y, y6 x+ Y  f% C" |! A# D2 l- _( Bimport swarm.objectbase.SwarmImpl;
2 J0 l$ |9 B, ~% F  cimport swarm.objectbase.Swarm;
  G! T( w& H! V& v" _. J4 ^- B1 Yimport swarm.activity.ScheduleImpl;. ~$ M& a' a/ I5 G; P0 d: s
import swarm.activity.Activity;
3 g2 L& a7 S- @6 g0 `3 X- Aimport swarm.activity.ActionGroupImpl;9 L% x2 O  ^9 W/ v
import swarm.collections.ListImpl;; l& |5 t/ t% }1 O) i
import swarm.defobj.Zone;
7 ?! K! u5 ]& Cimport swarm.Globals;
' o% g. M, w8 H* }$ N) a. t2 q' wimport swarm.Selector;% ^: E9 S& W0 g, a& E  L9 ]0 b3 z8 i
import swarm.activity.ActionGroup;
- J+ ^$ e6 m$ f; a, z; dclass Agent {3 e2 s% D* D2 `; B* f3 e* m. G
        char id;2 s$ o9 p3 F. @# L$ u6 H5 t- J! h

! L. b+ s+ O. ~/ H        Agent(char id) {, E+ }0 }* Y( o/ B; B, F) I7 R
                this.id = id;
* ^" i/ T" v% ~, Y7 \        }" A% }, H7 O& b3 y) Q4 B: f  K! ?
; q3 T8 F' T2 f! I+ A+ g
        public void agentStep() {5 P# x1 O4 M5 U" x
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 }, G5 n5 h7 Z# |3 v' h  {
        }
  M  ]* B; w* ]}
8 o8 z1 d. b# ]/ z4 r5 t+ h' g2 K2 F1 F  f: C3 f
public class ActionGroupDemo extends SwarmImpl {$ b, b; {3 R1 K9 O- V" l8 t0 e
        ScheduleImpl schedule;
2 m6 K2 {# |) D" P  n        ActionGroupImpl actionGroup;
/ y4 g% M# X( C) p" Z2 y  j8 E        ListImpl list;
+ M$ }1 b" M/ {0 R' q% x        char Id = 'a';
+ t/ v& Q6 O% R  Z) W- _# J5 @
* g8 A. \0 A5 k% w, c% N5 _        ActionGroupDemo(Zone aZone) {
4 r* s! v2 w) z2 P                super(aZone);0 |# S8 ^; d% P( B$ D
                list = new ListImpl(aZone);" Z, A& j0 k5 V! f/ _
                swarmSetp();
8 r- [$ H# ?3 K' b1 h* Y  u                actionGroup = new ActionGroupImpl(aZone);; ?4 f) b0 f9 x, Y
                schedule = new ScheduleImpl(aZone);8 h* D0 q) W5 y9 {% N9 A  B
                try {
' R1 z; l6 n, o: ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  d  e% U" l2 {1 q9 M. S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& l9 C+ u& q: ]0 @( M; m* F# i/ Q4 t                        
' D. A( [- h1 ]( _$ @3 k- n                        actionGroup.createActionForEach$message(list, agentSel);3 ^2 Z4 Y4 {6 T2 c; `- B$ i! k
                        actionGroup.createActionTo$message(this, swarmSel);
* K) u( @1 b+ X! ]8 R# I                        schedule.at$createAction(0, actionGroup);6 C1 P, l/ b5 M  v$ b
                        schedule.at$createAction(1, actionGroup);7 P2 f1 Y8 J; H5 I) g! B
                        schedule.at$createAction(2, actionGroup);
' N9 ?0 d& \2 G6 x) m' y
% \' T6 _3 o  W+ t$ n: S$ `$ w                } catch (Exception e) {
& W# B6 \; X5 N                        e.printStackTrace(System.err);, k" |& o) L! H8 y6 A
                        //System.out.println(e);# q: x9 L% y" W: k/ d7 |; D6 {
                        System.exit(1);/ |& Q9 A5 |8 [1 F/ n8 P! A: N
                }
! g0 V4 ~7 a' h5 z/ |+ Q
' d8 x4 G7 H+ f0 l# N6 j4 x- w( J- B! [% d# S' D7 D
        }
$ h! ?" U% c" i
: ^: x/ p2 P! ]* ?; a- ^+ U        private void swarmSetp() {
; a# g5 [7 [- m                list.addLast(new Agent(Id));1 q6 e. V6 j( \4 ?  G
                Id++;9 t7 c- q( |; Q7 R! T  Q! k/ T8 [
        }
; ~9 i0 U6 V2 \6 @; \
5 k! \) m% C) e$ p1 _) L* P$ C        public Activity activateIn(Swarm context) {0 ], h/ g+ {8 `* B" q
                super.activateIn(context);  Y8 g# G7 `8 a! m0 B
                schedule.activateIn(this);
" Y$ w" d0 g5 a! q- V: E! ?                return getActivity();
3 v6 E& D; k1 O& J& F& r/ Y        }. Z& O2 b: h' w0 X6 t- z3 F7 i" s7 }

8 Q0 o- x! i% P        public static void main(String[] args) {5 B: s) e9 C9 ~+ q) k  ?' q! f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* \& C. k9 k- k0 x% n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 K) T1 K/ Q" M# }# F( `+ X                swarms.buildObjects();
$ `8 P! t) V  u3 L- R8 v/ g                swarms.buildActions();
5 k+ x" ?3 F' S4 x1 S                swarms.activateIn(null).run();
  y4 f' y$ T$ I* m        }
7 A5 s7 w7 h) y" f# d; F( e' h* K: ?, n1 H2 D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-13 05:09 , Processed in 0.020205 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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