设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12375|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ ^* i+ x+ R. K9 |$ l$ z4 k! [
; p( V5 p: n/ |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. h, D. L; S0 r. N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 ?- u% F3 |/ M/ K4 q& q2 B6 ?# iswarm.SignatureNotFoundException5 ?/ T5 M9 t9 ~! [- h
        at swarm.Selector.<init>(Selector.java:76)
  H4 o+ @: f+ G1 p5 m8 {% e2 f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- G9 i8 P- Q, o( E9 C* m( f6 `! U9 a! l: i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* y: C) P4 E; L
: j9 P2 r1 X1 R+ P6 l
0 J( a8 H6 M& T% C" H6 l( w: \0 \$ dimport swarm.objectbase.SwarmImpl;
' M& J3 {) Q2 w0 I  M1 `import swarm.objectbase.Swarm;! e  [3 u- c2 e; S  D0 t
import swarm.activity.ScheduleImpl;
4 T5 y2 ?1 Y, A* U! n% y; {1 Zimport swarm.activity.Activity;
, E7 T, r4 T2 b" c2 A4 q0 E, H9 vimport swarm.activity.ActionGroupImpl;
0 h; K- _4 K1 a( fimport swarm.collections.ListImpl;
6 d+ F: R! G  o: Mimport swarm.defobj.Zone; 2 A) ?" P1 ~: P8 a& W$ [+ q
import swarm.Globals;
1 _. u1 B6 o5 limport swarm.Selector;
1 _3 q! c( A1 }3 himport swarm.activity.ActionGroup; 2 g: w/ H. h7 Q9 ?7 s8 L
class Agent {
/ g! j% x3 A% s. C        char id;
8 L* l0 u0 w# {; \7 ?% J7 H1 o- z' [) U+ x
        Agent(char id) {
; `. t' E8 A. r6 e& N                this.id = id;7 M' Y4 X1 J2 E; v  K' S7 f0 n
        }; C* T  r2 q3 S2 O9 g* @
# {3 _( T* t2 }! j& C5 ^
        public void agentStep() {
$ Z( q" ~# E0 o7 n  F                System.out.println(id + ":" + Globals.env.getCurrentTime());4 D3 P- @1 T5 @
        }, ]: _6 j/ g$ G- t, y& v( m& z
}
, M. p3 A, q/ n9 d  I6 a" s/ H( o0 }4 S
public class ActionGroupDemo extends SwarmImpl {- p' y4 a' e* T, p6 R
        ScheduleImpl schedule;/ L/ n& n6 G; M
        ActionGroupImpl actionGroup;
* O0 o; p: e$ z1 t# Y        ListImpl list;# R% \+ K, [; b- l# R
        char Id = 'a';
: F3 N# H( K) d* {, Y) `6 Z$ W+ i/ H. z9 \5 Y
        ActionGroupDemo(Zone aZone) {8 H  U6 J! H+ W, g% A
                super(aZone);
% ], N. J  i' L! y' B                list = new ListImpl(aZone);
; r9 s3 [6 `1 E, q( R9 ?) x! d                swarmSetp();
, r, V; t9 s6 W9 j+ |                actionGroup = new ActionGroupImpl(aZone);' \: G- d9 ^7 N( W
                schedule = new ScheduleImpl(aZone);; B# `/ A. z7 g3 K& @
                try {( L; |% ]/ i6 _! X. r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 S" ^( y0 X6 E0 S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# [+ [6 c8 G5 X, `. P7 X                        
- B4 s* D; z) c4 D                        actionGroup.createActionForEach$message(list, agentSel);, G! J! Q. t; l$ Y8 u0 o* p+ E
                        actionGroup.createActionTo$message(this, swarmSel);' U8 M7 y& b0 _  O0 g( q' Z/ J. i
                        schedule.at$createAction(0, actionGroup);0 s  a2 ~% l0 Q
                        schedule.at$createAction(1, actionGroup);
. V0 ^; o6 d: k: m/ w1 T2 W- c                        schedule.at$createAction(2, actionGroup);4 Q8 }: d7 r1 Q
# Q1 p1 C' ]2 W) o+ a
                } catch (Exception e) {
( {: k& X9 G  K1 l. {                        e.printStackTrace(System.err);0 C4 M2 S( P4 L
                        //System.out.println(e);
( B4 S4 F, H; E; v                        System.exit(1);0 F8 y# r4 V  t" R$ X
                }6 L# @! e. m2 B  d- v4 g

! R7 w4 O6 ~: z/ X
# B, T) k! m5 e8 G6 x( r8 r; _! E/ D        }
% e, n) f$ a( _& B6 s' ^! _1 a# s
        private void swarmSetp() {: W5 ^7 B; m' h. L2 u2 f+ ~$ F
                list.addLast(new Agent(Id));* x$ H8 F/ H/ t  ^
                Id++;
5 c' a7 M) _$ I8 [' n8 B# U        }) S* p! _0 z8 f' r$ `- k" D
, _; O7 r% Z0 V) }" I
        public Activity activateIn(Swarm context) {
* A' b1 R7 W9 M# W5 j( R( i  d                super.activateIn(context);+ c' M) b2 @$ I0 ?
                schedule.activateIn(this);& i$ O/ L' Y: r: @9 G
                return getActivity();
: n% ~6 l5 P. @* E- R        }
. P1 Y6 X; q1 Q  v, `% |- S, O; t( o- i* U! m# W1 j9 m# n2 h1 g
        public static void main(String[] args) {
6 u2 w# {: T9 W" ~2 C. H1 d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( Z  ^/ u7 V0 C; j7 k) X3 r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" v  W0 j0 k9 L3 z6 b5 _
                swarms.buildObjects();
0 L7 ?* y5 d/ S) e                swarms.buildActions();
0 V! j& S# V/ _, t6 g                swarms.activateIn(null).run();% V- Y- u, P4 v/ K! f
        }2 g& h4 Z- K# }! L  }

, S6 r4 B/ ~$ k. u& M; c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 21:27 , Processed in 0.028135 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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