设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6035|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 W8 X, U$ V# j6 k* Y3 F/ A
/ F' O) H' Y. O8 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# y" B0 A. W2 w* [4 K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* l2 e  ?  {8 R8 j3 f
swarm.SignatureNotFoundException( J) _, V% ?4 U+ s, e
        at swarm.Selector.<init>(Selector.java:76)  p/ s7 f1 q- W% X! b& k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); k9 D9 k- ]9 I$ t1 ~. F  X! T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# d; @2 p, `: Y0 `: H- V
' \& J' c* d9 b. U0 o  F! r0 S: O
! ^. E' {8 Z9 n2 ~# {$ K
import swarm.objectbase.SwarmImpl;; T- M1 b5 D( U: N& M) Z/ O
import swarm.objectbase.Swarm;# ?+ x) ?! A4 u( f3 L3 s
import swarm.activity.ScheduleImpl;
- y$ t. k  p7 y" m% timport swarm.activity.Activity;' f& x; M9 f. W& _) O
import swarm.activity.ActionGroupImpl;% [! Z$ Z4 T( F7 y6 l% v9 i4 Y/ s
import swarm.collections.ListImpl;3 n  K+ @' s6 L% V$ c+ C
import swarm.defobj.Zone;
: Q# I6 B! I* d- uimport swarm.Globals;& K+ h# F8 c5 c! v/ n
import swarm.Selector;( h+ I8 E" _; [' S" {- O4 Q
import swarm.activity.ActionGroup; % r3 d$ l6 u, p1 F3 c" e4 x& a& O+ |
class Agent {- U' q% P( V( S  c5 y
        char id;! V) b; Y1 S- k, `) l; m
0 _4 j3 K: K! p' h) C) H; W
        Agent(char id) {
; A! o, A! Z) @' @; E1 t4 [! t9 T                this.id = id;; U5 y- c+ E; I5 U( P( |
        }
% T, b2 [; l1 N; i; F* _* u; @
% j/ W( l7 `& }" j) Z: _1 Q        public void agentStep() {. ^6 q# H- |3 O
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) I5 B0 `' f, d! i% d9 c        }
4 b( \0 v6 _* E}) h; P: a5 i3 k

: [2 r3 b3 Q+ U$ n: X9 [/ }public class ActionGroupDemo extends SwarmImpl {
9 _$ @5 [$ D; c; A% {  u( Z        ScheduleImpl schedule;
( Q% b2 D; ~4 ~, ~3 O# K* N        ActionGroupImpl actionGroup;! h- e& ~0 K9 f2 G1 ?
        ListImpl list;
& c: [$ D$ j( A  q) G+ r1 u        char Id = 'a';
) Y9 c9 H6 w0 u# x
9 \, f& K; {! w* g* s- o        ActionGroupDemo(Zone aZone) {0 \) w- C5 U- O' q( _3 p
                super(aZone);: c5 J# v+ v6 B& ?$ v
                list = new ListImpl(aZone);
' X. p9 g, Q4 I( T3 y                swarmSetp();
% h3 F' W7 K! ^% Y; w* o                actionGroup = new ActionGroupImpl(aZone);& O: _: B& p3 ^$ q. t' L
                schedule = new ScheduleImpl(aZone);8 w" z$ f$ M* r: W6 Y
                try {4 h# F4 w4 g& `1 @
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 H- a  X, _% I3 W. u2 _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 c7 Q. ~) D& Z+ z" R; c5 R                        
6 d: l! d, E% W                        actionGroup.createActionForEach$message(list, agentSel);6 \8 W+ t* A  N# |0 @
                        actionGroup.createActionTo$message(this, swarmSel);
) R: ?7 c4 p# U+ M                        schedule.at$createAction(0, actionGroup);6 p  C1 h; u1 C; v6 `' f
                        schedule.at$createAction(1, actionGroup);& ]% i3 I" d( s0 {) v
                        schedule.at$createAction(2, actionGroup);
, ]% U$ \  u: U5 ^0 t+ F, V
0 }$ N. e: R' @, ?                } catch (Exception e) {
, ~  k0 L6 F" ?6 `                        e.printStackTrace(System.err);  N9 v4 G9 V" U
                        //System.out.println(e);
; ?* u) c1 _# H6 P- d" f                        System.exit(1);  r2 x5 C6 |( ]) P
                }, `% G3 f  {# J& F

& y/ ~( e+ r) b  [$ |
- |6 h7 U* }7 k( t        }
9 z+ ?* ~* B+ p0 Z% k/ _( M0 p2 j2 I" Y, b9 P8 e9 R
        private void swarmSetp() {
1 y$ S# o$ ?# Q# T                list.addLast(new Agent(Id));+ i& {+ ]2 U* ?( J2 e. d
                Id++;
5 B$ c& i. ?+ T# @( \        }% \  p% C+ p) P5 H4 q

/ q: J4 D9 {( b9 i, Q        public Activity activateIn(Swarm context) {
& O1 e% M) C  p! t, Y9 I                super.activateIn(context);9 [2 e% X* b9 X( J, }! F
                schedule.activateIn(this);
: J9 o# k* [% I* K/ w# t# n                return getActivity();8 L. @1 g  r6 w; q  W7 a+ G' O
        }
8 m% k$ p  F$ ^; s# T. ]" W+ E
, ?/ b$ |/ k& }" }* x* U7 H        public static void main(String[] args) {
% ?8 F" d! {: k( {) s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 m  W5 F2 n+ u# {) a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. F+ r6 C8 W: q1 V+ e! n# o9 e& R                swarms.buildObjects();8 P% U, I# |. k- b2 m. P& Z
                swarms.buildActions();% |7 _3 l9 S" R  o0 F0 i8 |# B
                swarms.activateIn(null).run();& v1 |8 C* q* l% h) K
        }; l+ X2 b; f5 B6 o, q& Z

  n0 V: _/ s" H. Z) r5 e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-14 14:17 , Processed in 0.017130 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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