设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9684|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: R' K7 \$ p4 r" u
7 `1 E& \: w0 t( M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! r: H4 i: D' ~! g1 ?0 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ T, r  o/ D3 ?$ E
swarm.SignatureNotFoundException) B6 \$ ^/ W8 [
        at swarm.Selector.<init>(Selector.java:76)
3 b) D  _6 A* M4 G2 y/ X+ o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  b* x9 `. Q4 v# {& q! D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! l9 C. K/ _; T- a6 |; j( W" e* w0 G3 R% r/ ]

9 E( z$ |$ r7 Y+ p  W# Qimport swarm.objectbase.SwarmImpl;
& u3 _8 X- J) t% Jimport swarm.objectbase.Swarm;
* y3 f" ?  H* |import swarm.activity.ScheduleImpl;9 i: d& g+ f3 T: v. I
import swarm.activity.Activity;( z4 U; k. Z6 r( J8 E6 M
import swarm.activity.ActionGroupImpl;3 `6 f9 M0 f# s: Q5 v4 ?: }
import swarm.collections.ListImpl;3 `) z" U& p3 M! a6 f( e( m  S) R. A
import swarm.defobj.Zone; ; R$ y0 L5 X  }# k( E# a5 V
import swarm.Globals;
/ W/ K9 y; ?, D0 b, D+ X$ Vimport swarm.Selector;
! {3 Y+ R. J" u9 \+ N1 q9 V4 F2 _import swarm.activity.ActionGroup; 0 t3 m( @% b. ]. J0 ^2 V  ~/ Z+ C1 t7 G
class Agent {
. b; B/ N4 J+ r. o        char id;5 ^1 M: g! b* X- I& c

( q( a' l* A, p' N4 V        Agent(char id) {
7 s. h: H7 v& A# }                this.id = id;
4 C0 A. D* ?! L1 G% v        }
( `+ f+ ?6 A* x4 i( |5 {; _3 c" i+ \5 P' G& e
        public void agentStep() {
1 y  c2 q* w0 c9 p- g% E                System.out.println(id + ":" + Globals.env.getCurrentTime());1 d( z1 _- w$ S$ G- m! p/ t8 n* M: R/ v
        }1 j2 x8 y  M4 B
}
) _8 E3 I! B  z: \* G5 w. Y( r* y, |" H+ z. y; x  Y4 z
public class ActionGroupDemo extends SwarmImpl {  q, O6 y2 v3 X* u
        ScheduleImpl schedule;
+ m/ g" R+ _# v' k$ P        ActionGroupImpl actionGroup;
* U8 U( i9 d# k        ListImpl list;
+ S& F6 e: R4 o6 s6 L" s        char Id = 'a';7 z; m7 H. {6 h6 n6 `4 F

* i* V0 f/ t/ Z, N7 r0 P2 j        ActionGroupDemo(Zone aZone) {. O0 y( X8 N1 F" J& W& ~
                super(aZone);4 @9 v3 Y8 R4 f& y
                list = new ListImpl(aZone);8 I# J, O; d, @! z" o
                swarmSetp();
3 R7 [" h  X4 N3 g/ j' A) _) [" U                actionGroup = new ActionGroupImpl(aZone);
3 V) n7 k' k% E+ N/ V- C- D                schedule = new ScheduleImpl(aZone);
# V! A: v5 F2 w3 v$ M0 X; a& D                try {
- x& Q# |* }" f$ n) c! J                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% e5 V. t/ d* D  [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, m7 ~+ V( X2 g                        % \. e5 `- {4 G: H
                        actionGroup.createActionForEach$message(list, agentSel);$ y* N. F( \. U5 s; v8 S( r
                        actionGroup.createActionTo$message(this, swarmSel);
: p. R1 S2 S  b: x3 ?                        schedule.at$createAction(0, actionGroup);
9 F0 c# {! n, D                        schedule.at$createAction(1, actionGroup);8 W, p3 b3 e0 w' D3 f/ L
                        schedule.at$createAction(2, actionGroup);
: i- j9 G4 V; i. Q1 K% k. B/ \
. g1 J" ~: T: y: Z+ q& J                } catch (Exception e) {
7 G/ _) ?( q; Y                        e.printStackTrace(System.err);& H% l0 n) G4 n/ Q  n# x
                        //System.out.println(e);  p; Y! \' f; I$ a$ U+ Z
                        System.exit(1);6 S* n- M, Q) E
                }& b7 I, B1 Y  }9 w

/ X) E: r( d- c( [
  V  S3 O7 K( T* j5 i- v        }' V0 E: j. p7 |& ^

. Z  u8 u+ I$ G! `5 Z8 A' {        private void swarmSetp() {/ W+ }: w! H5 H; @% G+ b
                list.addLast(new Agent(Id));
( R! l& X; v0 P* ]6 V                Id++;* ]4 p' O+ l4 n
        }
6 E5 `5 F' @- @3 i/ ~+ e. j& O; S! ?1 N  I" e# o
        public Activity activateIn(Swarm context) {$ T+ @: Q' H  m# T1 p" o
                super.activateIn(context);* M5 |" I( }9 B9 O. U  z
                schedule.activateIn(this);& U: B" Y/ p: O7 T4 C  j7 v4 S
                return getActivity();- O8 w: c4 G+ v: R
        }
! d& h/ |( ~* E1 i$ N" G, S' L' r0 D6 S
        public static void main(String[] args) {
9 i- J+ @& {# S* c+ g. a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ H* ?2 X+ O$ A) E" }/ y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 \' }) Z/ Y* e' Y: |
                swarms.buildObjects();
" A3 o3 W) O0 p) _6 D                swarms.buildActions();
+ C0 T# J* Q: k$ d( A) M1 {$ T5 g                swarms.activateIn(null).run();
6 u! {3 [2 E/ F$ {: I        }
! P' l+ }* T5 [, e9 w0 Y) T: c% |& s8 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-19 13:05 , Processed in 0.014778 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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