设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13248|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  K7 T: l- y- |0 K" v0 J' h4 ^# A! Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 U0 M- B0 }: ^( Z& k$ R6 F. e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 t' E" z% O5 R) Z
swarm.SignatureNotFoundException! r' [5 b6 j* l' k* z5 B
        at swarm.Selector.<init>(Selector.java:76)2 T# ~/ ?/ [- E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' q; [+ [3 o. H3 N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# h) o* f- Y, a5 k; i* W' H! I* y
3 d% J# f* [7 Z& ~/ p+ d
0 A9 L$ y+ ^& L/ a' R3 Q( q  gimport swarm.objectbase.SwarmImpl;
  v/ j: s& p, s& Y5 Z! {( Zimport swarm.objectbase.Swarm;
4 M7 Q. c9 U9 N: iimport swarm.activity.ScheduleImpl;
2 R4 p0 g, g9 B1 F. n5 Simport swarm.activity.Activity;" ?; Z" p9 N0 X, A
import swarm.activity.ActionGroupImpl;9 _9 u+ [+ `& l# `7 n& V1 T
import swarm.collections.ListImpl;( T) p! l$ I  L; G: P& M0 ?" q
import swarm.defobj.Zone; 4 u$ f! ~2 b) I3 _, ^# X# R- v7 }
import swarm.Globals;, W0 A0 l7 a( A( J, E3 W7 k
import swarm.Selector;
" z1 W  z8 @8 t" y: d' k6 a# e/ kimport swarm.activity.ActionGroup;
1 Y1 ^& N8 s* y+ p* z+ cclass Agent {
- B' m' Y8 v( b        char id;( @# Q* _" O+ w. D- |

- i/ r3 C2 W& o( H& j2 s        Agent(char id) {* @: y4 x3 {; k- Q) w& G* C% Y
                this.id = id;
; A: z4 x/ G4 _        }
, W! X# E9 ?, l" Q
8 u  W7 l' R0 a        public void agentStep() {, X  |; H8 t/ y% i; T+ c
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 m# P+ n& ~# G& l  O" A        }
' S0 R( `& U" J% z/ O}
' p, @1 ^* Q0 P9 _; P1 i( ]
* j' h  V4 C  `- M% g  Fpublic class ActionGroupDemo extends SwarmImpl {) X9 C( ?; k: o9 t- x6 u
        ScheduleImpl schedule;) s$ ?3 h# p! E- I, L7 P, ^
        ActionGroupImpl actionGroup;0 s0 C, ]+ d) I+ P5 R* o
        ListImpl list;
  }5 r& P) I# C6 T6 F/ p        char Id = 'a';
+ d+ I, c0 c8 i1 B. y8 d3 \5 y: N/ o; d$ q8 {, [8 Q0 }5 b: c. s. U1 [
        ActionGroupDemo(Zone aZone) {
! R* u6 f. ?0 k7 P, `                super(aZone);
8 n% H6 F( a  x: M1 F- {* K" f/ r                list = new ListImpl(aZone);
7 @3 r+ q& C/ [* l' ~6 i                swarmSetp();
( y, M! t! c% g9 ?                actionGroup = new ActionGroupImpl(aZone);
1 S! i6 |6 Y: p6 y                schedule = new ScheduleImpl(aZone);
* x$ t# u( m: q/ C: B                try {
3 ^% M" Z2 J5 U- R4 G! \7 W                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 H- y! a: M; N% _- X% p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 [: r3 L  K  F+ J- O$ u                        
$ n( l) G% x- c; G4 k                        actionGroup.createActionForEach$message(list, agentSel);; S$ H: ^5 C, O
                        actionGroup.createActionTo$message(this, swarmSel);! R; A3 {& [8 C" I3 |
                        schedule.at$createAction(0, actionGroup);) C  @2 J9 `# ?& x( \: f1 F3 ^
                        schedule.at$createAction(1, actionGroup);1 y6 I; R( @& l; x, t" j
                        schedule.at$createAction(2, actionGroup);; K" W$ Y& c! R6 o) e
  D4 {8 z' f& x8 T! I3 p' N/ Y
                } catch (Exception e) {+ m8 _4 _5 y4 c# Y) d5 T( t9 P: K
                        e.printStackTrace(System.err);; |0 O4 T/ E  j* V& U
                        //System.out.println(e);' `5 p4 R+ E; h/ Q+ h
                        System.exit(1);
3 q- u' H0 i# ?$ f6 Z                }; t" W" ~0 B. @

0 J5 ]) a; L' D( Z* l7 E& a& h
. U. ]! B- {  c( ?- w        }' A1 o' ~  T0 d7 x
6 u, F" {" |( Z2 Z" ]4 B4 [
        private void swarmSetp() {: D. S3 p( o' S& \& J0 Q# G- ^
                list.addLast(new Agent(Id));6 W% H% r6 e8 X* z& E; l- d4 O4 g, n
                Id++;* G6 {9 g3 V1 T* r
        }; y0 x; p! ~7 W4 I' h9 _, S, q

4 Z+ K" R( b$ A' l: g/ ?        public Activity activateIn(Swarm context) {
1 Q- {/ u0 h+ M4 T' x" H9 Q                super.activateIn(context);0 L; @7 Y2 f% q$ A. A* V
                schedule.activateIn(this);$ S* J9 ?. Y: i
                return getActivity();8 g2 e, |9 I% J* ~- e( p
        }
. }5 h' `: C1 b& g7 Y+ K/ t/ p2 i/ X9 O( {) t) S
        public static void main(String[] args) {
; r2 M. j# w& V* k1 h7 I- r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" K+ y4 ]2 @. k1 C3 J# ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) u8 u1 i7 M" u$ v: I: W- }: A
                swarms.buildObjects();
% J# R* v) s/ [! M. e: M. m                swarms.buildActions();+ x1 T4 D9 _+ ^" z0 @5 D
                swarms.activateIn(null).run();
; J! ]) q$ o5 u  n+ H        }
  Y$ `8 P6 d$ b
7 z* _# E' j; \  p  e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 20:13 , Processed in 0.017978 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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