设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8139|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / W2 z/ f" c( o3 d% ~9 f
4 Q, i8 a* A3 J1 i. z) h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 Z/ c6 V* ~# j& b1 s& R5 |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 s* a* z) f" }swarm.SignatureNotFoundException
% M2 c) U+ q: T        at swarm.Selector.<init>(Selector.java:76)( Y6 J  D  e! \$ t( ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- N. k6 @' U  A; E+ j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 J/ f- X" K0 M' v" F
) ?1 H! X, A' m! f$ Q
% R( e& k. ~; v3 Cimport swarm.objectbase.SwarmImpl;5 ]+ S2 y5 O. W
import swarm.objectbase.Swarm;
# s) |% [; ?, Q: U" Y" N) |import swarm.activity.ScheduleImpl;
& N9 k2 v9 C3 i3 a  Nimport swarm.activity.Activity;
( w* K; W' s3 ]import swarm.activity.ActionGroupImpl;* X( q( W% O0 b
import swarm.collections.ListImpl;9 C* T' j! a3 F5 F
import swarm.defobj.Zone; & ~1 l7 x3 J; N( o" M' ~, g/ Q& K
import swarm.Globals;+ q; h; x& C/ T( s. j
import swarm.Selector;
' S8 C" v0 [! Himport swarm.activity.ActionGroup;
  Q# l# S, K. t, e' s; H1 qclass Agent {
% ^! W0 b* Y" \4 i* H        char id;5 ?+ H7 ^4 z' t0 i( q; m9 w
; M( o" H- Y: _+ u
        Agent(char id) {
) K/ F4 _# @1 v! m                this.id = id;! m/ t3 ~) C4 ~
        }' p7 y  a1 d  K: p1 U
/ T# M, Z! q! `# {3 j
        public void agentStep() {4 ^# @# f, q2 u( x! E+ W5 C
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ y& E# C# G; r# Y4 R; j
        }
4 X; y# Y! D1 v2 J& Q0 L}8 W2 W/ B* D- |: L& M# d

% H- b0 F. l8 c# o  Bpublic class ActionGroupDemo extends SwarmImpl {* C# q# ]  D6 |  g9 Y
        ScheduleImpl schedule;
$ P$ E7 [2 x9 F3 o8 t( ~        ActionGroupImpl actionGroup;( `* Z' B. j* {' M# E+ X
        ListImpl list;( L" L) q' V1 g
        char Id = 'a';
1 [3 e. e. T0 K$ o9 ^  H7 m; K
- f2 _, Z/ s; r* e        ActionGroupDemo(Zone aZone) {
. {- M$ V# w+ e' d* C+ s" I                super(aZone);
/ c, H: U% V) Q, M# j" M# Y# {$ ~  z                list = new ListImpl(aZone);& l5 C- q+ z$ y4 x- n
                swarmSetp();# P- v8 o) Q. K. {
                actionGroup = new ActionGroupImpl(aZone);* @! A! F( N! u8 D3 k* k+ |5 x
                schedule = new ScheduleImpl(aZone);
" R" {; w& M$ |2 O: a& P                try {9 L9 w6 z5 D* J: b5 M: s- g3 P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ ]& O( Z/ _7 X                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, _, n7 @# \7 k$ b% o                        : |% Z# H4 g  r# x
                        actionGroup.createActionForEach$message(list, agentSel);
* ~  J2 _; V) }: M$ o! T                        actionGroup.createActionTo$message(this, swarmSel);
" O$ W9 n/ f8 v2 ]1 D. g% P                        schedule.at$createAction(0, actionGroup);
, n; A) Q% {( [8 N; q6 e                        schedule.at$createAction(1, actionGroup);5 D, y$ O/ O4 z
                        schedule.at$createAction(2, actionGroup);
" H: O4 o, f& V9 x# O% s. ?' N
7 @. W# k6 }8 ~/ H$ W( Q: c) p                } catch (Exception e) {
% X  N6 Q* X$ o7 P. S+ K                        e.printStackTrace(System.err);: d1 f( B+ B) i  Y) |8 j! Q4 i% e2 X
                        //System.out.println(e);
7 e4 }* Z  p  T6 z9 P5 t) Q& U5 g                        System.exit(1);
' @) h( @/ k0 i" [( L, R- Z9 `% i                }; {& u8 b* _4 \1 j  \: ?

# N5 n. @% H1 z1 y/ F
- ]/ f- y: F. C; ]+ i3 |5 k* p        }4 _* p$ |& c9 O$ D/ U
/ r, R, R( |2 u  [$ y2 H# B/ W
        private void swarmSetp() {- y- `9 J# _& s! o' J2 `
                list.addLast(new Agent(Id));
2 ?. c7 \1 x2 F. }                Id++;
& |+ y' A" U% [8 f        }
! Y- p# u  h- t- V- s( W1 h
- i% ^. q6 k4 P: s  \        public Activity activateIn(Swarm context) {
$ h" T+ }' Y* Y+ U                super.activateIn(context);# G, c( H* T# h  u
                schedule.activateIn(this);
1 p  L! W' f6 R8 M- ~, j/ _! O9 H                return getActivity();
* T: v% k% k+ Q6 {9 g. Y        }
8 f8 }$ _, m8 H  Z: o' }$ d) y5 n
        public static void main(String[] args) {
' k2 I- n+ a. n% o& }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 b( o# w( ~; R1 b3 a( r) b$ U; @
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- ~2 h, j5 V$ H1 {                swarms.buildObjects();
4 m- i2 H! t2 P3 t8 `0 }) ]                swarms.buildActions();
6 E* Z. M0 G1 M& I                swarms.activateIn(null).run();+ d% @5 c$ `6 \7 K  A
        }( c; l8 k: Z- [

8 D7 \' A% ^+ P/ I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-31 15:32 , Processed in 0.017376 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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