设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6778|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + O) P" j+ G6 w  B, W

/ Q+ ^8 V( c; B  X& G8 i本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ |- a+ u- I6 J) }9 C6 R/ l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 g% ]2 K- S* P( x
swarm.SignatureNotFoundException$ W5 J$ c; ]( r$ q# l
        at swarm.Selector.<init>(Selector.java:76)# h+ a& C! c( p: ~! Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& h3 v+ L5 J- v
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' c. F1 D' C9 @, \8 w. ]! S) T

7 n* d4 y2 y9 L7 Q+ G
2 K1 i; o% C( B- A% k5 K( fimport swarm.objectbase.SwarmImpl;% ~1 n$ W. y  B! @
import swarm.objectbase.Swarm;
5 \* C) D: N' K8 ^  d9 Q& kimport swarm.activity.ScheduleImpl;( ]. o6 v+ ]4 h6 D2 [1 `
import swarm.activity.Activity;7 c# T9 M% h1 }& x% W
import swarm.activity.ActionGroupImpl;
6 Q# C$ h' D8 u; |import swarm.collections.ListImpl;7 M$ f$ M3 I2 Z1 s1 F; p
import swarm.defobj.Zone;
* v- ~! r8 t4 \7 X# _, S- m0 J, mimport swarm.Globals;% E9 L) Y! R$ p( t& d) ]
import swarm.Selector;
1 R4 G# L1 C7 ~. Limport swarm.activity.ActionGroup;
; F. y: {; o3 b" b9 ~2 Y& tclass Agent {/ X# c( m1 _1 i! T
        char id;
% `) x3 n( l6 t: f
$ D7 {! {) a* |. k        Agent(char id) {
- L- j( [6 L7 W0 Q                this.id = id;
! `( @, X2 o6 A$ g        }
( K7 i7 q6 q( b; j& X
8 q8 n# I5 X; H' h1 d        public void agentStep() {
+ Z0 [/ N# I; w1 w: D- [                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ [  ?( T* R8 d5 N2 H* d3 B* l        }
1 T# I, h7 ?- n  n}
5 l# t; J8 K! `; O2 H) j/ u
  k4 U* {! \$ ^. f0 kpublic class ActionGroupDemo extends SwarmImpl {
: f5 R' a0 b- [% C( y        ScheduleImpl schedule;7 r% [& d) n/ q# d" Q7 w
        ActionGroupImpl actionGroup;
" ?* M0 Q$ G& Q! D- X+ ]8 R- }7 [        ListImpl list;  u" v6 k/ w" J
        char Id = 'a';
4 l2 G) `# f2 `! t
; M, p* N4 x' s        ActionGroupDemo(Zone aZone) {
2 N- o1 e. X7 b0 s/ C, P- j$ T- F  R                super(aZone);- S! ], Z* X3 q' I/ i8 ^4 N
                list = new ListImpl(aZone);- O( V/ s$ r6 R( _1 }
                swarmSetp();
* ]! {, C' ^! y0 s* \                actionGroup = new ActionGroupImpl(aZone);# I2 T3 e& ^/ u4 |
                schedule = new ScheduleImpl(aZone);
( H# f7 h$ J- w: m                try {& ^/ s) ]( W5 j0 j% f5 F( t
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 L0 y( ?& _# D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  G9 {. {! {2 w+ g. `; H4 e  ]                        
7 D# t$ Q( E" y3 r; ~                        actionGroup.createActionForEach$message(list, agentSel);
; [  }2 m, K& J+ _$ W                        actionGroup.createActionTo$message(this, swarmSel);; u" ?! ^# H; g+ x- H8 S& `
                        schedule.at$createAction(0, actionGroup);
0 u. m1 w& G- |, U2 e4 Y                        schedule.at$createAction(1, actionGroup);- n1 ]: j3 l8 j" J* j# d! k6 j2 [
                        schedule.at$createAction(2, actionGroup);! h, G8 `) H0 Y/ p7 l- g2 T
' ]0 \& B6 c# j% c! s. ], q
                } catch (Exception e) {$ z+ i' l# j6 c; Z9 R+ G% L0 ?
                        e.printStackTrace(System.err);
% W- p+ D4 z. r5 z                        //System.out.println(e);9 }6 K4 E6 v2 ^& `
                        System.exit(1);" c& u/ p& l* c/ w+ f% i* S
                }1 k. j' w' l( H; A5 }$ e' |
3 v4 B' O" T3 m' u

. V# ]1 i# U6 P" {+ I3 ^        }* O! F% Z+ |* b

9 n# R0 Q: w) w" U1 x" y        private void swarmSetp() {# a8 n+ B0 v% {6 x$ a# d
                list.addLast(new Agent(Id));
* ~! a& d% ?# C: s                Id++;
4 \. x, A0 v+ T: C0 o        }2 X. ?- O2 M; j- l$ `
* d/ k" @. X6 B) _( X. V. ?$ W2 B
        public Activity activateIn(Swarm context) {" g7 w6 R% S6 f) b% f
                super.activateIn(context);8 G2 x7 J$ j* K' M4 s
                schedule.activateIn(this);
, o6 C' r/ b; t' w' G4 m; i                return getActivity();
, S7 B& n1 T, {; v: Q& N        }
. N2 C7 |9 v6 Q" j9 ~7 A+ s$ `& W' r5 t
        public static void main(String[] args) {2 b2 Q# W8 [" O' B- N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' ~2 I! y. b; h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( x9 i4 q; t) O5 V" ~- |
                swarms.buildObjects();4 v/ i0 K! X5 r, W5 f2 s# o
                swarms.buildActions();/ f8 v$ Q. t2 y  E0 y
                swarms.activateIn(null).run();2 Z& `* `! u- c5 Z! @) {
        }, A! K/ d/ t6 r. n4 C' x7 H
, r1 m; T7 }. n" j" y% s0 e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 03:27 , Processed in 0.018608 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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