设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5348|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * u4 B. M% ^$ U+ y% }$ B
3 W( R0 v: E) h0 J- D0 r9 D1 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ J4 b( E; y1 B& Y+ J5 ], y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: {9 k  X1 N/ p0 R" j: G( T( h1 Rswarm.SignatureNotFoundException
) O# q& Q4 i& }1 ?& l. k1 i( c        at swarm.Selector.<init>(Selector.java:76)- j: @& V1 p* s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; A$ ?: a# y: A9 _1 f' i+ N        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 w1 ~8 z" d% t- v6 {/ P- z

. ^; T8 i) b! j( W- `1 U
7 w. G; F% K9 e3 r" fimport swarm.objectbase.SwarmImpl;
9 T" P* m# y9 A! r* z1 T: bimport swarm.objectbase.Swarm;6 R* t. Z  k9 w# c, b6 k
import swarm.activity.ScheduleImpl;+ P7 ~) O( T7 c7 C# d4 |0 B' A  j
import swarm.activity.Activity;8 Y* e, J8 U1 w: q% m- i( c6 p
import swarm.activity.ActionGroupImpl;' A) U5 ~7 o& e& C6 n/ C
import swarm.collections.ListImpl;
! j4 o. X' e" R7 {+ z6 X: Simport swarm.defobj.Zone; ( A& U2 S  s' ?/ L/ u) k
import swarm.Globals;
- i% }4 z4 ^6 c5 nimport swarm.Selector;
' s) Z7 O9 w2 T* T4 |6 O# Fimport swarm.activity.ActionGroup;   ?2 ?. I- n0 c+ ]1 h/ e) z
class Agent {
& ^+ e+ i) R5 i' K9 F& @/ B. t        char id;  @; q# D# \+ n! J, b& F
# W; t  y0 S2 C: z, F( Y0 l
        Agent(char id) {/ i- c- [3 E* k2 Q1 M/ l! x9 k
                this.id = id;/ T3 Y! k; g- R1 M
        }
. u$ c/ @) [/ K0 F( |6 ]% d: e
- H1 g# @5 q! k4 H0 `; y8 y        public void agentStep() {: D6 h  [, T5 e
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& W/ j+ }/ T7 L# L: H2 q        }1 K, h' [1 U# M- |, g& C
}
% P: \3 w. q+ {2 W7 y8 d1 u1 N- _3 W! z4 @1 E% m
public class ActionGroupDemo extends SwarmImpl {
: A& Y1 R, _8 F+ g8 y# c% D        ScheduleImpl schedule;
5 R- ^6 N3 T0 u: ?3 B+ g        ActionGroupImpl actionGroup;
9 x6 A. h1 S, C        ListImpl list;* ~' ~) q/ E0 C9 A9 d
        char Id = 'a';2 u, B" k  Q- B4 K7 E7 h
& g3 Z9 r- l& C
        ActionGroupDemo(Zone aZone) {
9 L6 l; ^" W2 m8 c                super(aZone);1 p. h0 l: m6 W  E) l+ ~
                list = new ListImpl(aZone);; y$ ?) B- p" {. l3 n
                swarmSetp();
+ ]) L5 Q+ g$ Q# Q7 `7 D& j                actionGroup = new ActionGroupImpl(aZone);
6 ^- ]4 @6 g  w' b                schedule = new ScheduleImpl(aZone);
+ B! M8 h2 n0 P* }, ~$ R                try {) Y: o4 q( i- h
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& ~4 G$ R, K1 q6 Y; `! a, i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- U) L7 B0 R* `8 R. i+ P5 Z                        
, F$ z& I) k9 o- d                        actionGroup.createActionForEach$message(list, agentSel);
, N" t& E6 L  k- [9 L5 \3 _- _4 T                        actionGroup.createActionTo$message(this, swarmSel);* |8 P5 |) z/ X/ k& I. J  }& ?' o
                        schedule.at$createAction(0, actionGroup);
, V" Y2 C9 e4 u& v& F! g& X                        schedule.at$createAction(1, actionGroup);1 w7 H+ r( C  ?* t9 h6 R3 o
                        schedule.at$createAction(2, actionGroup);& x' s! B6 v1 x: |

9 s0 h! ~1 q2 F  |/ V: o7 V                } catch (Exception e) {. B. F$ n: o/ W3 P! |; ?$ d. h
                        e.printStackTrace(System.err);$ O1 L1 z' I& t: ^/ `' Y6 M+ v
                        //System.out.println(e);
+ A  O. D- A* W8 Z                        System.exit(1);4 {! c4 V/ \: Z: m# b! T& i! u$ o
                }+ h5 u+ |0 D- j, r7 w; y

8 T# @) a8 \+ I0 e1 A1 c# z
& S5 }% B. K. X4 t$ t' x  M        }+ D# a  u3 n6 x/ `

$ {& k3 p6 a  k+ T8 M0 }        private void swarmSetp() {& a5 e& `! q0 M/ V
                list.addLast(new Agent(Id));) V/ w9 F. k! O3 b# H, x% q3 M* c0 Z# b; Q
                Id++;8 e) L1 W! B3 @- Z: H
        }
0 o! B8 V4 _" i4 n1 `' `7 q, a$ r+ n6 l3 b6 `5 s: C5 x
        public Activity activateIn(Swarm context) {
) k& v* J+ B8 s% R% ^! o                super.activateIn(context);
- t6 j$ D5 L, W- m/ l                schedule.activateIn(this);
; Z( Q& X  f! r$ U! `+ T                return getActivity();
$ \5 {# N1 H! w; h. _, D  E        }
: u8 k+ P, T2 _( P/ f- h, N, j
( n3 d2 _1 j" u4 p( a7 r        public static void main(String[] args) {
* u) @- h& j0 h  l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  R# j8 x( h3 {5 H$ m                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& e0 t- L, H) I6 c) W# l; k                swarms.buildObjects();+ F3 E8 f$ p+ N
                swarms.buildActions();
; ^9 Q9 G1 S2 o' X- N                swarms.activateIn(null).run();- i& L: [# o* V2 `2 m
        }
4 w. Z; S% t5 A1 c6 W' l7 q: x8 I  Q( w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-5 16:19 , Processed in 0.024281 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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