设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5128|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 |% Z) M; `" @9 d3 q0 Y7 w) X; l+ w% t( I3 U( i; n9 B4 U0 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 z- p. ]" O5 Q- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 S* `* E7 v, x2 o- h5 ]3 t7 |, S
swarm.SignatureNotFoundException+ X7 S- N3 B# z: r
        at swarm.Selector.<init>(Selector.java:76)
+ d* f- C' {. s5 ~' Q7 B# d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& T, {+ l- L8 _/ W9 W* h7 Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 F) U2 j9 \5 I, U8 t
9 s  t5 H% N# Y8 k9 N  A& ~: Z
& n6 X+ ^1 g8 p, Y+ @- u
import swarm.objectbase.SwarmImpl;
( X8 E- R" f: @' u- s# ^3 i$ u' Himport swarm.objectbase.Swarm;  ~" ]$ ?- R1 |  L; x
import swarm.activity.ScheduleImpl;1 l' y8 x$ d! F/ c: a6 K
import swarm.activity.Activity;
4 i' {1 o5 H( W" ~4 |import swarm.activity.ActionGroupImpl;. K- Z. p8 d) q) v
import swarm.collections.ListImpl;5 H5 h4 k5 M6 g
import swarm.defobj.Zone;
3 }$ {6 O5 V+ l$ W4 F5 J" J5 yimport swarm.Globals;
+ q$ ?( d$ ]7 f0 e- o; Y1 g3 Nimport swarm.Selector;
* T4 s3 t- ]% V" [import swarm.activity.ActionGroup; + q$ p  q$ V$ d! K  E; X
class Agent {8 ^4 a! Q1 ~0 n: n3 q: b6 |
        char id;8 |1 [& a1 u# X6 a: N0 B: ]
* P3 l3 [) m# d5 A
        Agent(char id) {( a9 Z6 d1 c! \; ]
                this.id = id;* r2 o8 x+ s- a8 p1 |& b0 f
        }1 W7 a( m1 f" }) c

3 ?: i! P1 ]; t/ Q        public void agentStep() {
/ o) V% r0 g0 g  E# c                System.out.println(id + ":" + Globals.env.getCurrentTime());
* l" x9 {: r) P3 A3 g; K        }
1 r( D" R& q# x, M. Y}. Z+ o- ?- u5 V. j2 j, D
1 |% c+ n) R' ]" g- P- W
public class ActionGroupDemo extends SwarmImpl {
4 L7 G+ U- N$ E4 x        ScheduleImpl schedule;
2 }6 g7 i, r) u  W        ActionGroupImpl actionGroup;
5 V: q2 L* `- e3 v        ListImpl list;8 i' ~* D7 @( q9 t1 w' M# z# f
        char Id = 'a';. n2 H% Q5 h  n- H1 f5 j$ K

5 _& d- Q8 A) G" G* f* P        ActionGroupDemo(Zone aZone) {2 e7 V* c4 }9 s! @+ U7 W
                super(aZone);4 o# B9 a/ M6 j' p2 l, y! J7 I
                list = new ListImpl(aZone);4 R5 q$ _: V* f! v( W
                swarmSetp();+ T" C1 j' a3 f; [
                actionGroup = new ActionGroupImpl(aZone);3 W$ Q3 p7 r2 I8 S, K
                schedule = new ScheduleImpl(aZone);/ p/ ^. y5 n# t& r9 C& ^: `$ D
                try {
; k/ S( ?7 G/ _3 r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 ^. I9 o6 N- s6 E" U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ f9 J' P4 h* n" m% x: S5 P+ m- h
                        , [) m, }% s/ H- B$ p
                        actionGroup.createActionForEach$message(list, agentSel);
2 l1 i9 O6 {6 N+ n1 P                        actionGroup.createActionTo$message(this, swarmSel);
, v  w* g' X7 X/ K% P1 {                        schedule.at$createAction(0, actionGroup);" @; c. r1 z) ^, \  {% o0 D/ r
                        schedule.at$createAction(1, actionGroup);
1 R. V7 q5 U/ t4 r                        schedule.at$createAction(2, actionGroup);
! C. j7 y3 V- @; r2 P8 Q) m$ m" h; v# i
                } catch (Exception e) {
! Y/ d# u* b/ W                        e.printStackTrace(System.err);2 {" B* c) i1 o
                        //System.out.println(e);
& P8 w$ h! D# o+ s( V9 s/ `                        System.exit(1);
9 k0 J# N/ K3 {0 L                }
- [/ B4 G$ p1 y
  R) g' B+ ]3 I) f% a" [' p6 e3 J% y. ^; Z, f/ ~. n; d; W
        }
2 D3 B8 H! @/ K4 X$ D" v% d  @9 `
        private void swarmSetp() {1 K4 s; H0 z1 ~
                list.addLast(new Agent(Id));8 w* D: ]. ^" }: p$ v
                Id++;6 T: M' q# w6 Y& o' a" ^( q& z
        }0 D1 U4 c9 x$ ]! x

6 }/ K, g) z* T# X1 o. H* x        public Activity activateIn(Swarm context) {
; G0 J4 u* ]# J. x$ i- a                super.activateIn(context);7 S+ u; O8 g. }# b- n
                schedule.activateIn(this);
! S; V  q5 b: h* ?                return getActivity();
% C5 p5 Y7 i) g$ @& h$ X2 n. {3 {* M        }5 z& A$ s1 e7 t+ j/ g

4 T0 m& j9 e3 Y$ P. w        public static void main(String[] args) {
" l8 ]/ D8 x* I/ p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 K! D. \4 J6 v# e, a! K& S" m0 \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 z6 D6 k* J& b7 R8 U% ]9 n                swarms.buildObjects();- j. G4 f  j4 |/ ~' C. e! I
                swarms.buildActions();7 Z- L4 |9 _1 @0 _
                swarms.activateIn(null).run();- j/ a: U+ p: Y
        }2 Z- H; q1 U% e  I% a; ~/ ?
: @: I. g2 O3 n3 l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-25 20:57 , Processed in 0.019133 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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