设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10230|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 c: H* K- {& ~  V6 ^5 g- Y4 o& A6 v( M# [4 y9 Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ P2 ]# o0 J/ k( J6 Q% G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) N( R8 G6 h' f& W0 u- u9 Eswarm.SignatureNotFoundException9 N4 g" u1 m% N
        at swarm.Selector.<init>(Selector.java:76)
' v; f' K) Z$ q- \9 ~  q+ Q+ e2 m! z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ a/ k0 {7 }) Q5 V; q# Z- m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ p6 J5 X6 ^6 f; I  [. I/ s' ]0 |% H3 ]. F4 E5 x
* k1 U& _6 T, N1 }
import swarm.objectbase.SwarmImpl;
: d! n$ i+ Z6 @import swarm.objectbase.Swarm;
4 ~$ k. @! r3 ?import swarm.activity.ScheduleImpl;
# [6 Z6 T8 \+ U8 h* L' Fimport swarm.activity.Activity;! Z' k# C. Y1 ?' D
import swarm.activity.ActionGroupImpl;
0 g" O: @  o! `4 i  yimport swarm.collections.ListImpl;. B  U1 F0 K9 d: p" v' g
import swarm.defobj.Zone;
2 _! R- ?* M- b) a  m- V9 F! w! ?import swarm.Globals;7 H. X5 x+ S9 ?* e- t
import swarm.Selector;
: |( O+ t1 H" U; Bimport swarm.activity.ActionGroup; . ]+ w9 q# c& v4 V
class Agent {
- Z6 j" ]! G8 Z2 A  s3 e        char id;
# j7 Z2 |. e4 V8 i; b$ a5 m5 J/ m
        Agent(char id) {. M) u+ D# z* J* Q7 y
                this.id = id;
. j' V% R6 K; D$ x& w        }
0 ^2 m+ h( s, m2 z8 o* F9 B+ |3 ]! k# E) T, `0 E  V* m1 Z+ }
        public void agentStep() {8 L, ^# F% K9 w, T* i; |1 u' O1 B
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ ~! t7 g" o# `% x; E" Y" K
        }7 {# m+ i) g- N" ~6 `! [
}
* M! M8 H  Q! L' D3 @' c; R9 l! U- `3 p1 ]
public class ActionGroupDemo extends SwarmImpl {$ S* t$ C# y/ U# Y& n
        ScheduleImpl schedule;5 i$ M1 ]3 o  e. o& O
        ActionGroupImpl actionGroup;
  s! y% L4 d" w* [! \        ListImpl list;/ Q. A8 ^9 J. D! `* i
        char Id = 'a';
7 B8 U' q: i& x, I" x8 C
5 z- O( u1 l6 W! l: [/ b8 }: u5 v        ActionGroupDemo(Zone aZone) {7 @9 B6 \- j* g% W/ o0 x3 G
                super(aZone);
5 y  Y" @& z: D) Y+ Y                list = new ListImpl(aZone);# W% X: L% v5 J6 D5 V
                swarmSetp();' E. N8 h4 a6 ~$ q
                actionGroup = new ActionGroupImpl(aZone);* ?7 G/ l4 X0 i0 n/ T
                schedule = new ScheduleImpl(aZone);
! c% O$ t( A! J, H2 x. B                try {: ]  R, [. c' m5 H" C! A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! n0 ~( Q' E7 m) F8 f0 C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) R! @1 S# a  R5 |( Z
                        
4 o2 s6 J5 ~# D3 H  X; A" t                        actionGroup.createActionForEach$message(list, agentSel);
9 t9 Q9 [0 a0 k/ N$ A$ n, ]                        actionGroup.createActionTo$message(this, swarmSel);2 q2 W' X* v# ]) g% ?
                        schedule.at$createAction(0, actionGroup);
; x8 n: X/ o* z; D) R* S/ |                        schedule.at$createAction(1, actionGroup);( ]# V7 J  r* U6 d+ F. a
                        schedule.at$createAction(2, actionGroup);
$ D  M( I% l. r/ N  I" W0 j/ Y
1 A5 f  J6 P+ t( Y1 l9 K$ L                } catch (Exception e) {
$ _$ P) N/ Q7 E+ C                        e.printStackTrace(System.err);
2 _0 _, m% u) I5 K5 b( ^6 v                        //System.out.println(e);; j" A+ ~& s: g* s
                        System.exit(1);, J& S, G; U# b# x& J- B4 }
                }
9 o  x3 z- T3 i4 J/ `2 s% k9 a) {4 ~: O
  g% i9 m9 A) h+ n! B8 j
        }. D' e  Y$ T& [4 O7 z- Q

0 k5 S) a2 X& F* g  l        private void swarmSetp() {0 H) t9 X  e$ C4 A7 s" p- z
                list.addLast(new Agent(Id));2 f- a- c& m! Y- O6 I- f
                Id++;/ ^% o2 U6 K% ]6 \; v1 D
        }0 O2 }3 b( T, q4 y! Z1 f

0 n5 @. ]. J" z        public Activity activateIn(Swarm context) {& m! h( Z+ Z5 O. K
                super.activateIn(context);6 L# c" {5 I2 d
                schedule.activateIn(this);
7 v. P, l7 E  I/ W; G& C                return getActivity();
' k1 X/ [& q) Z* D        }8 i( t/ s+ g. r3 J9 k" f' x
9 F$ i; @/ z7 C! G2 s
        public static void main(String[] args) {( u' r9 S$ u1 ]2 V" G) S& H& B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& w. y1 g( [8 O7 H. A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) @3 J4 T; s( L
                swarms.buildObjects();
3 q8 M$ R2 Q& Q% [0 E                swarms.buildActions();
; `' j( ~9 z  G( _& O0 V4 i                swarms.activateIn(null).run();
5 R5 T; t7 H- {: Q5 t1 x0 D. O        }7 s7 S( T" [% e. d, C- S
9 c  {4 Z  L% b$ s9 ]2 E9 m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-8 01:37 , Processed in 0.015185 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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