设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5969|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 m' h* o: \: V  X* y9 g2 d) \1 [, k2 }5 E& g7 X% i) A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 g. y* A, H# X  q5 o) S* T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" F. p3 |+ i4 }+ E* u( U% Aswarm.SignatureNotFoundException
/ u8 _& F$ }$ O2 H+ n# C% m* Z: C        at swarm.Selector.<init>(Selector.java:76)( g+ e3 i- z! y# v: V1 c0 o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 e# ?3 {1 i4 E8 E% {+ v! M5 D        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 K9 b/ X3 i1 L% g7 L" Q( s5 |0 q2 o( s- @  S: h- ?2 t( n
* P) a+ e  v# B* N
import swarm.objectbase.SwarmImpl;
4 @$ B# M1 M( B, p/ M  u8 Limport swarm.objectbase.Swarm;& Z5 ~" H6 F, R) i. q% [0 X! B
import swarm.activity.ScheduleImpl;
4 F8 V1 O% p( Z8 q+ Vimport swarm.activity.Activity;
3 e. i  [$ B( m" [3 Dimport swarm.activity.ActionGroupImpl;5 `/ Y/ F+ ~2 d' x+ @5 Z
import swarm.collections.ListImpl;
) o* |" s- m+ v' U! D1 Fimport swarm.defobj.Zone;   s* x/ R( w, `, A2 [8 ~
import swarm.Globals;9 B9 J2 ^" e0 O/ G
import swarm.Selector;
2 X4 a& H, U! ]6 H9 c$ Pimport swarm.activity.ActionGroup;
- E. Q0 @' |2 G/ Qclass Agent {2 t( T7 t( ~: R: z
        char id;! a/ A4 s7 m" _4 K+ J3 T* i

2 N) b  n6 N5 v4 [" E) h" N        Agent(char id) {
4 s8 n. K9 p, [/ j( G  [                this.id = id;/ k4 y3 r6 W& ~: t$ H
        }: a4 e1 p+ s. o8 \4 Z+ t# u- H$ e1 i* o
0 R  `5 R# y" @1 C5 Y
        public void agentStep() {
4 @0 X9 `6 C  b4 s# I. [) ~                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ w6 W* P, m5 T2 P& D( c8 G2 ^        }
/ [+ H' j: Z+ N/ R, f) j}
3 P/ ]( N* I8 h; U$ }& n5 L/ ~7 u# M, a
public class ActionGroupDemo extends SwarmImpl {2 ]2 i2 H2 O/ B
        ScheduleImpl schedule;' R+ `% y2 Y# R; {# q7 c- T! M1 y. @
        ActionGroupImpl actionGroup;
$ j8 X  Q8 W  n2 N7 C1 v        ListImpl list;
# q! X1 h" Q9 Y, M5 @        char Id = 'a';
- A5 L; l+ g, Z6 @( N1 k, J
; w2 R( I% Y2 g% G: J8 V: o        ActionGroupDemo(Zone aZone) {
# k! d! ^) {- A2 Z0 K  y. [                super(aZone);
5 D) J/ x* k; a5 e) @                list = new ListImpl(aZone);) T+ S9 r$ h( b! c
                swarmSetp();
% Y7 V( u% s' A0 j# x- d. K                actionGroup = new ActionGroupImpl(aZone);
9 L9 x5 M$ T) }: W  r: _( i                schedule = new ScheduleImpl(aZone);  {0 W; D4 L$ h4 a# X' P
                try {
  d/ J8 }/ \9 |* p. E+ `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ B: A0 W& U# c5 p8 _, h9 V2 y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% f" f5 k9 r' p( U' m7 z                        $ `3 E. C, K) Z9 z' g3 i
                        actionGroup.createActionForEach$message(list, agentSel);
; O  d( S& {8 [; J1 u* @                        actionGroup.createActionTo$message(this, swarmSel);
! \( z: A) {+ C& K7 q                        schedule.at$createAction(0, actionGroup);1 G  M( N: f2 ]
                        schedule.at$createAction(1, actionGroup);" ?6 {  L; r/ w( s& P
                        schedule.at$createAction(2, actionGroup);
! D" F! v* _. }& H
- ]" Z5 K( i* v+ s                } catch (Exception e) {
1 w- O& _- r+ t  Z3 X! C                        e.printStackTrace(System.err);5 ], {. r: S" l" C4 {) h: u% j
                        //System.out.println(e);2 Y; V: p: X* Z0 G, n& F" N9 |/ Z' O
                        System.exit(1);
* e+ [7 D) H! J8 ^) f                }$ j( Y4 q. a( c5 w8 _7 z' L; o0 F
9 m' L6 P& L. c5 t$ ]; C
' ^. u8 i0 e) v8 _1 R9 _9 Z- f
        }  \8 C* ^: ?& \4 E
! T- B9 h0 V3 Q
        private void swarmSetp() {
! h2 j; G1 u5 [% b! l) I: V. }% ~                list.addLast(new Agent(Id));
& M; x- T: I* u) \( }- F. ^$ @                Id++;6 Q# w2 V. Z7 ]" L) F% H( y3 {
        }9 l$ ^% ~. @. E  `" R& Y

+ k) W! }. S+ n& o( y        public Activity activateIn(Swarm context) {
, H% n1 _. ^" F4 w2 t+ R                super.activateIn(context);
0 w' L  A" U8 a                schedule.activateIn(this);3 s1 ]2 U. }  Z- W9 S
                return getActivity();
; z" h+ N% U$ P        }2 H- J! D: Q2 E4 v, C0 H* A1 Z

; n! s! S* r4 {  Y6 U' g        public static void main(String[] args) {8 ~( J( L5 S+ G# _! d0 G2 G9 ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) |% P+ I6 b; E% V( V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) ~* X! G' P. f) z$ y9 n
                swarms.buildObjects();- v' H! `- a/ h/ G. n
                swarms.buildActions();0 q9 k' u" d( ?
                swarms.activateIn(null).run();
- v  v! |# N2 f        }
# x, a9 E3 v3 i5 ]( N2 N9 t) i, d5 @0 @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-12 13:44 , Processed in 0.018266 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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