设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5471|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 Q0 z7 Z/ H1 x4 E5 h
* p, {' c$ C  q  Q1 V; A6 [& o3 |( N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" f& h4 w& ^8 K/ f$ o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; S) n! P- K7 p* Xswarm.SignatureNotFoundException2 H+ G0 G/ j/ l( q; [$ R/ F! A
        at swarm.Selector.<init>(Selector.java:76)0 h- n& v! o* @3 c$ S
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  h9 R' _& B8 O: j7 x" C        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ n* C4 [4 ]) [0 |7 z( p! l* ^+ u

* s* @0 F5 Q$ Q) t4 H' s- T( z2 W$ Z& |" r$ |
import swarm.objectbase.SwarmImpl;
  }" \6 [, A* b2 Ximport swarm.objectbase.Swarm;
" T& O5 v" m0 a# A7 U9 n, vimport swarm.activity.ScheduleImpl;, v2 J/ g+ g( h! \
import swarm.activity.Activity;
9 `$ n0 B1 i- I9 Z  g, e; Q5 \/ bimport swarm.activity.ActionGroupImpl;' U4 o. Y* _% b3 F) f
import swarm.collections.ListImpl;
& D0 }2 b6 M# F* d/ ]+ kimport swarm.defobj.Zone;
: r% `5 b# A! F* I8 @import swarm.Globals;
* n3 m- V$ F! m+ b  Q) zimport swarm.Selector;5 _1 T; C% e! G! o  F, q
import swarm.activity.ActionGroup;
0 U" E; {: Z* K. D" g2 T' sclass Agent {/ z' A- t" m( h! Y$ @: }) O
        char id;
; \5 V0 k0 B- f) y4 V8 D& i5 i' m% v% }
        Agent(char id) {
- `# Y# @0 K" ^% Z                this.id = id;4 ~% U# d3 R& \6 h6 x
        }
# r- B  s' w9 L! m' h! }/ }' }- g  H8 C$ N' c/ r  J' I
        public void agentStep() {& A1 N& ^8 t" Z# Y9 U
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ P$ z: D  W, ~7 F
        }+ P3 f0 X- _+ j7 J
}
$ ~% \" B4 l8 X4 f; K+ e2 o  ]0 f  m- l( h% O
public class ActionGroupDemo extends SwarmImpl {
; \9 R- s! b* `: ?        ScheduleImpl schedule;4 n9 ^+ N% g3 t" u5 g
        ActionGroupImpl actionGroup;
1 U& c8 k3 L3 b6 W. _        ListImpl list;
4 K' _3 d  {# Y# J/ P        char Id = 'a';
& L% l$ a5 ]$ w1 [2 D* z
* p! Q3 N" `/ H" s; G        ActionGroupDemo(Zone aZone) {+ w& a2 c0 t; T4 }- y
                super(aZone);; U0 U: K; c+ V
                list = new ListImpl(aZone);
: D. P# ~9 M  |# I+ q                swarmSetp();. K+ ?8 `  I! I6 t4 d; [
                actionGroup = new ActionGroupImpl(aZone);. n9 Y& t5 p. X0 k- g8 p
                schedule = new ScheduleImpl(aZone);
) b( A" j6 K1 ~8 v                try {
0 J1 R6 {, L. g& H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) {9 ], P& {5 J/ K6 f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ S6 m- x3 x+ D  L
                        
( }3 s/ f4 z; l0 T+ y$ D                        actionGroup.createActionForEach$message(list, agentSel);
6 M; o, b' x. g$ c9 x0 m% a                        actionGroup.createActionTo$message(this, swarmSel);
( R6 [5 Y4 g3 t4 k/ U7 |+ w                        schedule.at$createAction(0, actionGroup);
% N1 ?5 W; I! Q: ?* v/ n                        schedule.at$createAction(1, actionGroup);3 K( o7 z' v$ k' E* S( h
                        schedule.at$createAction(2, actionGroup);
" y: l/ |8 i/ E. ]
4 {$ w8 X9 P( M9 E7 B                } catch (Exception e) {: Z4 R5 M" V% v) F- g, Y
                        e.printStackTrace(System.err);# G' b* u# `4 D/ Y0 x8 q
                        //System.out.println(e);# ~3 |. Q" d( E: J
                        System.exit(1);% B# s, L& R. e
                }& B$ g3 W3 t, J7 r
, Y2 q6 x# Z  L* f  n
) y, o" C+ ?5 n7 X; |. `/ p
        }
9 r' L# {4 q1 U$ u7 U6 q% `
% [- r# S1 ?; l/ v6 `! T5 E        private void swarmSetp() {, u$ q( K9 z. i$ ~& ]7 [" b
                list.addLast(new Agent(Id));
8 {0 C6 T, V- X                Id++;
9 x* O2 Z3 ]6 g' l# T. b  \5 \8 i        }+ p( o" ~1 }2 _. h

1 _/ y2 q- u8 z: q        public Activity activateIn(Swarm context) {
4 E# U5 U& F9 ]0 u  g# r; ^                super.activateIn(context);
$ s3 Q, }/ e& q; J                schedule.activateIn(this);
  c6 `6 Z- K9 g, k; S+ Z                return getActivity();: u$ D& m( q, i# l0 E8 J6 P7 ]; X
        }* d' l: q' j. X' I

( b' c4 ^1 W# s9 f8 [        public static void main(String[] args) {
6 f# D  c9 x6 y; @1 X1 l9 N* W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 Q- N1 L2 V* d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, \* G( @& o6 K9 u
                swarms.buildObjects();
  H! C6 L& h; F6 z& F                swarms.buildActions();
# Z( S! u# O9 ]: F                swarms.activateIn(null).run();6 \1 s) E1 R  d3 k2 N4 B
        }
) ^2 l6 c& {4 r6 I, c
# c) w+ Q; a. m) a: ^8 g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-10 01:34 , Processed in 0.016137 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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