设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9067|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; M4 U: H# p- z) k3 i0 x
( _7 z# l2 T& A$ l, L  p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 ^% H8 s( U' c9 g1 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ s( k7 @( m; Q( Q9 x" Y
swarm.SignatureNotFoundException
2 S! N* f" Y1 q5 n# l" }$ W; c        at swarm.Selector.<init>(Selector.java:76)
( [! c. C6 B1 q% Y4 k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# h: S( }3 n' C$ k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% F9 ]; A( T& ^5 F7 }4 q3 p% V8 }$ Q5 z. P

+ Q8 i) L  m% d! u! L" F* Simport swarm.objectbase.SwarmImpl;
9 ?! G) d- ^3 X2 O! C' Iimport swarm.objectbase.Swarm;
. d( G9 H6 g; t& Z+ m! pimport swarm.activity.ScheduleImpl;
$ }: b7 B. @! U7 J8 m2 O" Mimport swarm.activity.Activity;
8 i$ A, j  S( d, `import swarm.activity.ActionGroupImpl;  @# _: {" B% ]/ O$ e) M3 z
import swarm.collections.ListImpl;
* R; S- C8 U" g; I4 q. `; ]import swarm.defobj.Zone; " U5 d& p1 c5 [3 K. S
import swarm.Globals;6 f4 t% @/ l6 i/ U5 f. g
import swarm.Selector;% e6 I9 h( ^2 w3 C* i; \$ O( @
import swarm.activity.ActionGroup;
8 j3 b" y# ^+ {1 W+ T% dclass Agent {
! D- h( N' c2 }1 Q8 ?        char id;% U* I& D/ {! j) _

6 N# X) C) x) [# x; g        Agent(char id) {
! y- Y' M8 S2 W* ~# R                this.id = id;
5 [" N+ k) O- l' e$ [  C  t1 j% `        }6 h2 e. y2 A/ I0 J9 ~
, F; l1 E! I" F7 O
        public void agentStep() {3 B( \  }6 S3 C+ e* `3 X. X) t' K1 D
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. g" M9 r( f6 v7 l  D$ n        }. \3 _$ l) @( `' Z0 s. _1 Y
}9 s8 @  K, m- f4 o$ `
3 d' m% ]% c+ w9 _  _
public class ActionGroupDemo extends SwarmImpl {- S3 z" f) D3 R& p) o
        ScheduleImpl schedule;
3 c2 V! x6 S! e6 [        ActionGroupImpl actionGroup;9 p7 Y* w2 n, i. C
        ListImpl list;+ q& ?  ?7 J# r) Z7 M
        char Id = 'a';, s; J: w% E# L) t* Q3 }
) v  k' n+ e. H5 \0 x
        ActionGroupDemo(Zone aZone) {" s* c! @9 }, D- c; l- n
                super(aZone);
/ ~% k1 e/ J0 ~2 ~                list = new ListImpl(aZone);: E' {7 ]3 b2 A
                swarmSetp();
( }! n+ \9 L; G! Y- N& U7 ]; R, x7 O                actionGroup = new ActionGroupImpl(aZone);
* M; w, r! K+ ?; H% S9 G; ?                schedule = new ScheduleImpl(aZone);
% q9 ]+ G5 y6 x8 ^9 Y6 {                try {5 K  c! D$ g3 l: ]0 r& K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ _% l! Q, W% {* P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% A1 r. \- ?9 X5 v                        / y! O, F  q! R# E" T, i, O
                        actionGroup.createActionForEach$message(list, agentSel);) I4 T: c. E* \; x
                        actionGroup.createActionTo$message(this, swarmSel);! K/ ~9 Q- Y2 ?" H2 k4 I' U
                        schedule.at$createAction(0, actionGroup);
7 H6 c3 e( ~- ]7 c                        schedule.at$createAction(1, actionGroup);$ b0 y0 P9 T0 M
                        schedule.at$createAction(2, actionGroup);
" G- H' k1 j/ h5 e
' Q+ V- u7 G3 o  l7 t                } catch (Exception e) {5 K) u5 `# [4 u1 l) _+ Z  V8 o( U2 O
                        e.printStackTrace(System.err);
. O+ E3 }# @4 i+ i1 v1 e+ w                        //System.out.println(e);
' j/ S$ m' ]% e& p6 O                        System.exit(1);
/ ^( h! ?: ^+ R2 @: E                }7 l- e; k3 I4 E

9 l, n, ?9 j2 \3 }/ U0 T6 U# B' `% |, m8 J! o
        }
; g$ k& t$ K+ t; C5 ^3 A
/ |  M$ @/ \' R4 x# f        private void swarmSetp() {
7 S! S. ?/ t- u- {' Y8 s1 r                list.addLast(new Agent(Id));
/ e; o7 M; [; s3 D& }+ ?9 i! z                Id++;
1 }, A7 N. Y/ D9 w        }) u( s3 t' ^1 k( X, H/ J

" f; j& x) m- V        public Activity activateIn(Swarm context) {
  }3 l9 d/ u) d- d                super.activateIn(context);
8 \( ]& b+ l  J3 P4 @2 q                schedule.activateIn(this);) g6 n- t* S+ t  o4 Z  Q
                return getActivity();6 I* _! h8 Q/ ]9 X0 |. D) [( K
        }
3 i4 f" V- V! c' G
, G. v2 x' s5 a" @  {3 x8 w        public static void main(String[] args) {
& f: S/ ]) E: F0 p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% G2 E; Z- F2 G7 q4 x  c, U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- O3 p( f6 A1 ]. b6 [; H+ ~
                swarms.buildObjects();
/ ]) y8 ~' Z5 Q0 G  b  ^                swarms.buildActions();
4 {: {5 Y4 Q* f( Z, |* m                swarms.activateIn(null).run();
) n* y! M7 u. F- U) g% k4 S, M        }
2 _' r. t+ ]: [
' t0 [. X$ v# v( e. X! ~: }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-30 12:10 , Processed in 0.016146 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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