设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5792|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 Y' h6 o/ G& p; z# N. V
  p1 B% h* D% g, T* Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 F8 K: _  J# h- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 |7 x  k0 c- Y8 K$ b8 I# r/ `/ [
swarm.SignatureNotFoundException  b* P. n8 v6 D3 E: L
        at swarm.Selector.<init>(Selector.java:76); }0 _: a+ j9 X- x2 H6 N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  N% }) ?3 P: J7 e        at ActionGroupDemo.main(ActionGroupDemo.java:67). r, d3 @. d- h! F0 J
3 w: Y8 Z& L4 w0 @! N: `& Z! H, E, O% C

. x2 \  {7 L! K1 M( V1 |import swarm.objectbase.SwarmImpl;
# }3 O* `* K9 x: W- T& O, jimport swarm.objectbase.Swarm;
: b3 G8 O% X+ b1 O9 b  Oimport swarm.activity.ScheduleImpl;
) D, ^5 }# k' h, \0 D0 r* ?8 H, c* _import swarm.activity.Activity;% T- G5 `. n* D: r5 I
import swarm.activity.ActionGroupImpl;8 s8 B. a) Q( x. }; Y) z2 X% c
import swarm.collections.ListImpl;
  z- Q! Y+ e. a) x$ nimport swarm.defobj.Zone; 1 r; k5 k9 E8 `" q
import swarm.Globals;8 Z2 \9 k5 b+ N$ C' F/ l0 ~$ w
import swarm.Selector;
! h2 O: T  V; ]; aimport swarm.activity.ActionGroup; ) p+ L3 W$ h; \8 R2 R
class Agent {
/ U$ z$ L  U- x# F$ p        char id;
. ~# K4 d1 X+ ^& U5 f# Y( l! S! _( O1 R
        Agent(char id) {) @6 {9 l. Z+ f5 g) e5 r3 a9 v
                this.id = id;* \) W1 S+ O- N) J, Z8 F" g
        }
2 p6 I. k/ L) C" ^, r/ Y/ e" {7 k. @; W
        public void agentStep() {& w- `  W* }  Z" s2 G! U5 o
                System.out.println(id + ":" + Globals.env.getCurrentTime());* \9 `8 R! d/ p, v$ u5 i0 u
        }
7 V! x- u7 E: j4 k* ~}: `0 l# l5 a* O1 P
6 ]2 j1 }$ @5 k4 g
public class ActionGroupDemo extends SwarmImpl {1 q/ V$ z5 c# z4 _7 r4 Q2 q) G
        ScheduleImpl schedule;7 p5 L+ R- Y8 R
        ActionGroupImpl actionGroup;7 h, _7 a# Q. ]$ j) M4 H
        ListImpl list;
+ G( b$ V+ W9 Y5 p2 U9 h        char Id = 'a';2 g* O  Z4 Q4 `9 b4 U

6 \+ c( p5 E: x8 n# b7 \7 W2 {        ActionGroupDemo(Zone aZone) {; K' c5 @& o- V; W5 t$ s# z
                super(aZone);9 w+ ^# |& J2 R# y. D, `
                list = new ListImpl(aZone);
% o) `6 Q3 m8 i! C                swarmSetp();
9 f2 D: @  ]' J+ k0 j: ~/ w& `. N                actionGroup = new ActionGroupImpl(aZone);
/ z$ D, a7 F: \  a( b& p                schedule = new ScheduleImpl(aZone);
; J% ~! u  l" Z* ]* y                try {6 T$ }* b2 c) N' h
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 Z) ]  K  g- x1 d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 y4 {3 \3 I# d5 N& S# F
                        
1 i& Y9 A! m& P* A7 l                        actionGroup.createActionForEach$message(list, agentSel);9 j) u0 I/ F, j
                        actionGroup.createActionTo$message(this, swarmSel);5 V5 j$ Z" J! D% `5 _: h4 a( S4 _
                        schedule.at$createAction(0, actionGroup);
; `! `$ |+ Z1 y; H                        schedule.at$createAction(1, actionGroup);
/ |  u$ }& G$ x* p$ l                        schedule.at$createAction(2, actionGroup);3 w# E, ]! ^* C  N3 A
6 n* u! w# n! r7 o
                } catch (Exception e) {; m" t8 x3 @2 E* T$ h; K
                        e.printStackTrace(System.err);
  l( c5 x0 U5 o4 q                        //System.out.println(e);
% I" m0 R; B" `( x$ w9 T$ }) d                        System.exit(1);
: p$ \6 Q! z. l+ d7 ~4 }8 o/ }* X- `                }
* z* \: v: I. s9 o& H1 L
7 s  }- e" R8 c* L, S( q+ D  u! d
/ g, o# N/ X8 t6 @- O" K. p        }
7 f' j  Q1 t$ R& j  s2 a* [! ]: M
; @  v& @: {% O1 ^. f9 y; ?2 M        private void swarmSetp() {
' i7 C. D/ C) t% y, ]" I                list.addLast(new Agent(Id));
& W# p, S$ h- M6 r0 P                Id++;1 O: c! I$ Y$ p- L3 q0 w9 l4 j
        }
  Q- Z7 _6 h. f$ p4 C. b+ Y' e) |
, I4 Z  Z# ~* W% W3 g. L( U        public Activity activateIn(Swarm context) {
1 R( I& I( c! j) N% T  H0 q$ Y                super.activateIn(context);% q& D3 k- Z6 `7 e
                schedule.activateIn(this);
& x# Z9 N( C- i5 Q                return getActivity();
3 I. n6 X% F& F& _        }( a  \8 F* ?/ B& J2 R

5 m' Q# i  J. z+ j  o        public static void main(String[] args) {
: u6 `* ^" V' D' c% q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& Z+ e% q7 S; d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ x% d9 _+ X7 X! s' ]8 f
                swarms.buildObjects();
$ K0 _4 W  X- D+ O" N" w                swarms.buildActions();- I$ o7 p/ z) e, z. {
                swarms.activateIn(null).run();
, M& W% O0 n1 _+ t/ B! u" I        }
8 [, W' `8 P& R* \
+ U/ l% ~/ w; d: [7 f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-27 01:06 , Processed in 1.411675 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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