设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10949|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 w& ]! O6 H% a( \+ J# e3 Z
  c$ o) Z, W, z% [7 @" C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 c' c# }# [& n, u/ M5 ?+ n# X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: o: ?; Q* T$ r$ ?) Q  [swarm.SignatureNotFoundException1 C* T! b, }. I" A4 W4 q+ e
        at swarm.Selector.<init>(Selector.java:76)
9 Y7 s; X% j$ J. m- w8 R5 g        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 D+ k4 ~/ v/ s! @+ b, q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. Y& {' M( B/ Z/ q8 _
: |* U/ T2 Q, `" C% ~6 H. u! O! \$ O+ r9 \" U6 R. U
import swarm.objectbase.SwarmImpl;2 ]3 X7 X9 ^) t8 v5 z( U& k7 j& d
import swarm.objectbase.Swarm;/ x( e0 c7 {( V) U! M$ u! d! F
import swarm.activity.ScheduleImpl;
/ x* V: P% u+ zimport swarm.activity.Activity;3 a) A# I* M  X& v& }4 t& Z
import swarm.activity.ActionGroupImpl;$ |" _9 ~- X; @) ]2 w
import swarm.collections.ListImpl;  R& c: S8 T8 f7 s# ^5 ?$ g
import swarm.defobj.Zone; 5 g0 L) G/ U$ N' ~: f! V$ {" h
import swarm.Globals;
9 c0 j" |& h9 v, B* n$ I( U: V; _9 zimport swarm.Selector;. n  N) D+ b! H; M/ g) y
import swarm.activity.ActionGroup;
$ w8 {+ Z$ i) P5 M( eclass Agent {8 U& z& Q- [6 h* i/ ~+ T
        char id;4 ^) N' c7 F( g: n1 w( I8 Q
6 g- b+ ^4 W5 D7 E0 z. t( Q& `& A
        Agent(char id) {
* s3 h1 g* t) a& @" q. o                this.id = id;
; T7 v& N4 v" \8 h        }3 G: ~, {  A/ e+ ~& f

! n" `6 T) u4 P2 _2 f        public void agentStep() {* I. u% g  f. f  r
                System.out.println(id + ":" + Globals.env.getCurrentTime());& H, t6 C6 N5 Q# ^4 x
        }
  h4 {. q: X6 ~1 k5 ]! s}
* L- B" j( J- D+ M" w3 l# ]5 [
9 m! c# P8 j+ a# epublic class ActionGroupDemo extends SwarmImpl {
1 `' ^4 R5 E( M3 I( g" Z# M        ScheduleImpl schedule;% H! F( f: V! D- k
        ActionGroupImpl actionGroup;$ S/ d$ f& y' f
        ListImpl list;
) n  K  ~0 i7 u' R8 q1 L! c# C        char Id = 'a';% A6 f* t5 p) ], ?# C' a

  F+ A9 b8 b$ |# X5 z0 P3 ?        ActionGroupDemo(Zone aZone) {: ~+ S# P2 L7 f% e0 N* ?3 y% N$ x
                super(aZone);
/ p/ W% {! l- v" X; H4 O8 O  f                list = new ListImpl(aZone);
6 |5 m  _/ U! A! a" `7 U                swarmSetp();; J: @4 Y3 R' Z( n1 j5 Y3 v
                actionGroup = new ActionGroupImpl(aZone);. T, E3 N  p6 S6 y, ^
                schedule = new ScheduleImpl(aZone);
- K, X( [: ^# g6 o                try {! S3 J$ b  p2 k. |6 p6 c; x2 y8 J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  k: {. x: A! k& P4 L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  `% Q, r3 c' y. f                        
: T' f8 z. d: e7 a, E% y0 t                        actionGroup.createActionForEach$message(list, agentSel);
+ N* C1 f# r9 I2 E' j                        actionGroup.createActionTo$message(this, swarmSel);
2 [5 F5 D5 Q1 U/ {+ H5 q                        schedule.at$createAction(0, actionGroup);
4 [5 C/ R5 T' T; i) j! A& Q" T! w                        schedule.at$createAction(1, actionGroup);
1 w# S; ?5 }6 H5 [3 B8 X                        schedule.at$createAction(2, actionGroup);
, i- T5 @' y  k% E! U
. l& @3 L6 ^0 |# B                } catch (Exception e) {0 J9 }" n0 ^4 o
                        e.printStackTrace(System.err);" O- R" d9 Q9 n  T8 ^9 Z4 _% T
                        //System.out.println(e);* g7 x, n1 |& q) E
                        System.exit(1);
! w1 F8 A8 ^6 r                }& k# l# q$ q0 W0 U4 I

$ \7 T  G$ Z7 A- Q0 }2 m3 C5 h2 d" Q# S4 ^% M3 ]
        }& M5 q1 U0 O8 _$ K/ |

, r0 [0 o8 ?' x        private void swarmSetp() {0 o5 `; e" G+ }8 A# c; ~8 P$ X3 w
                list.addLast(new Agent(Id));9 T- R3 s; n4 Z' B
                Id++;
7 w' z/ M& Y8 I* o2 Z        }
  C9 |6 z% C6 H. z  s9 W! ]. }% r3 _, W& i! P  z) y" U3 |' f
        public Activity activateIn(Swarm context) {% ?( j3 l* |/ r. |% h& N
                super.activateIn(context);
# p2 s* C2 S, ~' h, `. x                schedule.activateIn(this);
& U& Q7 D3 Y5 t                return getActivity();
4 h! k& U3 X3 B) h8 s" g% e  S        }# y! T( @& R; U6 p' _' G- x

" T" W2 D" q2 E/ `& @0 E        public static void main(String[] args) {
; Q+ y0 `7 w( J' d3 _5 V7 s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 _* L; b& Y3 w1 j: Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ K( Q7 ?4 K+ {) v# K, L                swarms.buildObjects();8 G( w/ J0 {4 f2 Z( ?% w8 g
                swarms.buildActions();
2 `' k9 j5 S* V: @- M                swarms.activateIn(null).run();2 S5 V  J2 Y: B5 _
        }( [, y% O0 K4 E3 U

$ ]+ L0 I+ V+ x$ u( D& C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-28 14:14 , Processed in 0.012429 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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