设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7488|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 @4 c& f& O3 A8 Z

2 [3 N7 @9 ^! ]% Y! I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  ~. x, a' O! |! k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  |6 ?7 b+ F+ M! h7 z
swarm.SignatureNotFoundException) G3 K) Y4 M+ R) R% b6 q
        at swarm.Selector.<init>(Selector.java:76)
6 a- O1 c9 c/ u% z5 V) {5 z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& d! G+ M6 _+ D7 m& p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 J! [9 D/ k7 P) j5 a7 K
: D4 [* W( y5 ]$ P: X
  `8 h/ V0 d" v: `; S5 F$ n9 |
import swarm.objectbase.SwarmImpl;
* X; ^2 _. ?! x& limport swarm.objectbase.Swarm;
2 T2 b; V0 q0 w3 G) K) n) }) E3 _import swarm.activity.ScheduleImpl;
! ^1 D$ j' J9 e, w5 l" W: rimport swarm.activity.Activity;# Z5 \- J% W& u+ b0 n8 e
import swarm.activity.ActionGroupImpl;2 A# A/ G- l" n$ ^5 M9 _, ]
import swarm.collections.ListImpl;/ p! Q. j! `/ ^6 J5 u8 {
import swarm.defobj.Zone; " c9 ?( L* P, u+ S* C3 a0 B
import swarm.Globals;0 v9 r: T- R8 b) w$ _
import swarm.Selector;9 i8 Z7 A+ e% N
import swarm.activity.ActionGroup;
; ?- z1 V: }* |2 k$ U, K$ Bclass Agent {2 s; [8 H: j1 u  |
        char id;0 \5 G- D* P6 V* {% x
# B4 q8 N' O. T; S5 l9 B
        Agent(char id) {
1 x7 H: m2 J9 y4 U: v$ m( d                this.id = id;/ G: |$ z/ c0 C$ p
        }
7 m( l, d) B/ z% f. d5 V& B- m
        public void agentStep() {4 ^, k4 S' u0 e& r+ R) U* \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 ~! q4 U6 N5 L/ U- |* t        }
7 Z/ x9 h( }. Y, W! Q}" ^* I* S2 o1 R, w
* U' }: l$ i- B5 R4 T( P/ S5 c% c, ~# ?) @
public class ActionGroupDemo extends SwarmImpl {
- l( V1 e/ }. I. J! S8 h/ w0 Q( @1 m        ScheduleImpl schedule;+ W0 W# V  Z+ e( h# O3 z
        ActionGroupImpl actionGroup;# m9 s$ k; y* u7 _, m
        ListImpl list;
! y- M, F8 j2 i1 q0 \0 x        char Id = 'a';$ _: \- b, P  o, }

5 v  Q  z4 v( M2 T1 ]        ActionGroupDemo(Zone aZone) {. |5 e/ w8 j5 N6 v# K3 Y+ h& I
                super(aZone);8 b9 S0 U0 n: ^2 `7 c( g6 i  X
                list = new ListImpl(aZone);- \/ \/ |0 h0 J
                swarmSetp();
, {' ]: x$ f2 }" R6 Q) a                actionGroup = new ActionGroupImpl(aZone);
. a5 k$ Y+ K+ t0 F7 C                schedule = new ScheduleImpl(aZone);8 M, C" B3 Z" T! W/ S* L1 T) O# v
                try {
7 L+ J. h5 Q0 p0 t1 k' [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* f5 L! u3 W/ Y5 [2 S! W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& N# S6 h1 M8 q, v% ~7 g
                        
: F- H5 X' r; f/ o                        actionGroup.createActionForEach$message(list, agentSel);
) r2 j4 g  U* a& J1 ^% E                        actionGroup.createActionTo$message(this, swarmSel);: _6 o+ X+ w0 R' U; K. ]7 u
                        schedule.at$createAction(0, actionGroup);" \9 @- \) Y1 z6 l  ?# P: q  @, Y
                        schedule.at$createAction(1, actionGroup);
1 _! t7 H" D0 |" S. t- m: c/ j                        schedule.at$createAction(2, actionGroup);  L& c; `3 c3 ?9 _2 ^" D3 k5 I3 z

" W( s9 X. u: W+ H5 w                } catch (Exception e) {9 [7 |$ ^7 A" s, d, J1 \
                        e.printStackTrace(System.err);
/ V/ w; O: @% F1 ?' ]9 i6 y                        //System.out.println(e);8 g' D6 Y, z' J0 l: L$ ^
                        System.exit(1);
$ g4 z7 D2 t3 ^5 d                }* A6 P, q) I! @

% I$ p( {& @. ]& V* Y9 \6 S
) r) Z2 K4 |4 `7 c" g        }
* k! Z/ P9 l5 B& R. l) S
( K% ?% K5 j, ~/ s        private void swarmSetp() {( z9 ~3 u- l! x1 w( l: a" x% @
                list.addLast(new Agent(Id));
5 u% E$ [: z8 O                Id++;/ ~. b, T# B  u8 A* Y! q$ V
        }
* l% \+ n: z' {1 _: d7 f. a& ^" [8 t4 \1 P
        public Activity activateIn(Swarm context) {6 h$ [1 @+ B1 U: v: @1 i# E
                super.activateIn(context);
" {, U& n9 C! v( w3 W) F3 i6 s' N                schedule.activateIn(this);; o! S' g5 p. d  l# t
                return getActivity();* S  H  w: O/ k) Q  t, a. |
        }( \5 ~: d# U" @& Z3 ~

! s3 ^0 e+ v6 i+ I8 d& d        public static void main(String[] args) {' y' L% `/ z- E/ h2 X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 E) x$ j$ Z6 C# R/ `' u+ l" w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) Y) |: u! X3 J, D* p
                swarms.buildObjects();
" y- v5 u0 }! J, b                swarms.buildActions();2 }5 y5 x  S' q' k5 A$ Z# b
                swarms.activateIn(null).run();
5 b4 h  h# h) b; j. h        }0 e: _0 c; ~$ y0 O- b" [; Q0 |
9 z8 T- e% m% K5 D. @2 s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-4 09:09 , Processed in 0.024515 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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