设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5689|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 Q; S  ?% I: f* U6 h/ |, G7 ~3 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 m2 D9 T2 k- {" @+ @: Q( r4 h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 @8 E- c& P% T) ]' A2 V' z
swarm.SignatureNotFoundException% s) \, w: r' J0 n8 H5 y
        at swarm.Selector.<init>(Selector.java:76)3 n: g, |6 I( Q& l9 D) Y1 I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' U! X+ ^( S* j; x1 u$ A) f        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  D! ]3 T+ l6 h6 k8 ~' c! Y* `0 V/ |& n1 t

' h2 z0 H; I: S3 M8 \# Fimport swarm.objectbase.SwarmImpl;; ]0 |: s8 a0 U0 D  Q' [' z# `$ G
import swarm.objectbase.Swarm;- H# A: T! r# ~" n
import swarm.activity.ScheduleImpl;
$ W8 c( p# B: q0 U+ q2 |import swarm.activity.Activity;
0 A" r/ q" _( \) C# i, H& Pimport swarm.activity.ActionGroupImpl;' ^- O$ w( J3 y" u  W; o9 Y: `( S
import swarm.collections.ListImpl;
2 j$ z9 L+ t" V! q$ ~import swarm.defobj.Zone;
- |! S" V+ m0 q1 j4 ?! Vimport swarm.Globals;% n' x' p+ `( a; k, E4 M
import swarm.Selector;
& V) K4 k; G- y! k% {$ T6 gimport swarm.activity.ActionGroup;
+ `. H" e! E; C6 k$ n2 {class Agent {. @1 K5 A$ K* |9 Y2 n$ l
        char id;4 S6 I; e# G5 n2 ]5 _* W/ K

5 ?  o% a9 `6 x* Z, x        Agent(char id) {
) p, u/ X; F2 I& O: |  G                this.id = id;
3 o  p# d  R# R/ N+ N( T" Y        }( J# i) k/ P3 s9 b, E
  f8 ^+ I/ n  h% n
        public void agentStep() {- a8 Y2 O4 p4 f- x
                System.out.println(id + ":" + Globals.env.getCurrentTime());  i- J" j' C; W
        }; |% b, ?- [& n
}+ T3 e8 Y9 K9 @2 A0 j6 l/ u) D
8 {& m% E" B  O' q& g4 ~; a" [
public class ActionGroupDemo extends SwarmImpl {; |8 @+ {1 K3 ], v8 i0 K
        ScheduleImpl schedule;; T0 B, H& O* v$ I1 p( y- G" r
        ActionGroupImpl actionGroup;& J0 \# s8 o" v; W9 }5 P
        ListImpl list;
. x4 w( d( v, N! u        char Id = 'a';
0 f' C0 @) X+ ^: A+ ~+ P
. Y" u4 l' [& `' `        ActionGroupDemo(Zone aZone) {% w- ]  m6 ^/ I. @7 A) O1 H" _
                super(aZone);
0 J7 [% |" v( @' ^3 ~                list = new ListImpl(aZone);
( m* B# e# e  R3 X- ?- f* X                swarmSetp();+ @2 {1 q. a, T, b" O& ?# \! I- _. x6 |
                actionGroup = new ActionGroupImpl(aZone);
/ ?; L8 U8 p  y  Z9 ~0 W                schedule = new ScheduleImpl(aZone);
9 C. O5 ^, g6 X- M+ N2 P                try {
/ M8 I8 M# f' l1 Q! k; a$ z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- T- D3 i: r5 [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( R/ G$ G" P4 P4 C2 Z5 p
                        . }, i% s' ?" P0 I& ~+ S
                        actionGroup.createActionForEach$message(list, agentSel);8 V0 P& W# C) S" }
                        actionGroup.createActionTo$message(this, swarmSel);
. j5 c. w& r# l. S% l4 L0 U                        schedule.at$createAction(0, actionGroup);; f, ]/ m* ]3 S8 j& y& P1 A
                        schedule.at$createAction(1, actionGroup);4 A# I, A4 N, M: m! p/ p
                        schedule.at$createAction(2, actionGroup);
2 L6 e) Q- h) _8 y3 M( C' R
9 _% _( ]/ G3 @                } catch (Exception e) {7 }/ s7 J( O; L# V6 d
                        e.printStackTrace(System.err);/ c& I9 _/ _; z" \' @2 H* i
                        //System.out.println(e);
% r  f$ D6 I1 o5 Y                        System.exit(1);' t/ `" i; t" s! O
                }
# y# I3 F# F9 K
  u& g% e2 z& a# F8 b
( c9 O9 _: W. c" U        }& Z$ b( ?/ E0 P/ v# U$ i

' @* r6 [. K6 \% K6 K        private void swarmSetp() {' r  E  O7 s2 R6 U) |) [9 L) r
                list.addLast(new Agent(Id));
) {0 \! [; v5 v* f1 O! L( ?                Id++;" X) {! r- u  M' A. |" _/ a
        }
6 [1 `. {" H9 t/ m/ L* F4 `1 k! J
/ y5 a0 Z- K8 |- W3 i# z        public Activity activateIn(Swarm context) {
2 V! f9 p6 {: l# p; \' c9 Y% U                super.activateIn(context);' g( M, w, Q8 h4 i1 j
                schedule.activateIn(this);. q% C. f5 d* U& m% m# _  x
                return getActivity();) @  }: x* Y2 P! r  g0 U& r7 Q0 l6 J" g
        }& ^$ P2 r/ |6 }7 E

# ^; z8 j( j& ^) c) {9 r& Q        public static void main(String[] args) {+ e: F, ?- q. e. b- m- N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 x& d# J7 @7 ^. {
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; `: |3 U, l& v! v% E! U, ]/ ~0 D
                swarms.buildObjects();* X  a2 v2 }1 M( d0 d& Z5 D! y& `
                swarms.buildActions();, \! `; `. C; d% u
                swarms.activateIn(null).run();* @% V: q0 x6 I9 x$ J  L
        }
, ~$ \& z7 m6 q6 {& [, J1 A/ v& x- O0 T5 n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-18 21:35 , Processed in 0.019006 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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