设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7741|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% j: Y5 e: M+ y# U; t) g8 r4 k. \: a  v4 l; }& ?  i( p  Y" r+ Y8 N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ z1 R# _/ U2 Z( @  A. S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 N2 D2 y6 t' m0 d1 fswarm.SignatureNotFoundException2 O3 @* K4 e) n; z. l- p* f, T6 q9 p
        at swarm.Selector.<init>(Selector.java:76)
" ^! u" b: G' H) l- ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 w9 F+ ?/ A; X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  \: [4 `" F: g) x3 ~9 a& ]4 p, X* p. Y4 g( g; U

2 ~0 \# `$ j; Y- j' H) N" @8 J* K4 eimport swarm.objectbase.SwarmImpl;" n3 B3 G/ D5 G5 Q  G+ c
import swarm.objectbase.Swarm;
- i- F% y9 U& s( L) `( T, D5 ^; rimport swarm.activity.ScheduleImpl;3 z, n% Z/ p2 K2 V7 ^0 Z% A
import swarm.activity.Activity;
% B1 a8 G  K! p6 \( Z! A9 {import swarm.activity.ActionGroupImpl;7 X# K" ~2 u+ V/ x
import swarm.collections.ListImpl;
0 x8 f+ P7 M' e9 \9 D: r- r" iimport swarm.defobj.Zone;
2 `3 p# J* {6 T8 t- w4 \" Ximport swarm.Globals;
2 V) _# a1 U$ p9 K; Cimport swarm.Selector;
$ y/ y) [0 o: S* b8 g9 J( Y) Aimport swarm.activity.ActionGroup;
& ^  f5 W' f4 v4 Q8 oclass Agent {
$ l6 i' Y, H2 r- q3 Q        char id;4 g& B* x) P) [) L8 v3 }" k

6 h% E- W. d9 k7 j, d' f        Agent(char id) {* e0 X9 {0 e8 o. H  [8 p/ c: {
                this.id = id;3 a2 l( M  Z% b' M& @$ R5 \
        }7 v! x. ]* K& G* b) o' G

1 _, W7 e/ G3 S. V* i1 A        public void agentStep() {
/ ^. z( q5 D9 Q0 e2 m" x7 p                System.out.println(id + ":" + Globals.env.getCurrentTime());
% J( g( A& V' m2 C        }
( V0 z5 y+ }3 m: D# P7 ^}$ n: p, j3 X& u  l( t
3 j! g, _7 e, ~( g$ a1 d# f; C9 R3 |$ C
public class ActionGroupDemo extends SwarmImpl {  C  U& g* {* _0 R, j, ~
        ScheduleImpl schedule;
* C; o8 p2 I0 A! Y& J$ F8 b        ActionGroupImpl actionGroup;2 s  @2 B0 N! c/ @" B# _5 r, V% Q, d
        ListImpl list;
4 l( Y5 u+ Z9 }/ [' o        char Id = 'a';
/ }5 v$ O9 ?/ w$ Z# [+ Y0 A8 B6 m, c" ]1 s* |% x2 w
        ActionGroupDemo(Zone aZone) {
) E! _1 s) O, F* P% a9 \/ J                super(aZone);
( y  o' J3 H$ U, q                list = new ListImpl(aZone);& W% G6 X4 T4 N/ ~. j7 c2 m  D* B
                swarmSetp();8 _  x& e  g# ]" o0 x+ r1 \
                actionGroup = new ActionGroupImpl(aZone);* s, M! @+ Z7 C$ i7 _7 Z1 @* z9 f% Z
                schedule = new ScheduleImpl(aZone);- d/ Z$ ?& Q# u2 k+ b, L: ^
                try {
8 u( Q2 @' k/ D" I1 x0 S) q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: W! N$ w3 d- C% l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 m' Y- X( G, \2 J                        9 n3 x3 a4 c9 X  M
                        actionGroup.createActionForEach$message(list, agentSel);
- A' Y. ]& O& G7 T                        actionGroup.createActionTo$message(this, swarmSel);& M( v& z8 M5 j% ^
                        schedule.at$createAction(0, actionGroup);8 p- e4 k3 ]- i/ _2 t0 F6 U
                        schedule.at$createAction(1, actionGroup);+ y' ]6 i$ S- }' I5 Q$ F
                        schedule.at$createAction(2, actionGroup);7 Q$ G  r; n; k  Y, q
( v& C: h. F5 Q, L4 Z
                } catch (Exception e) {
& ]4 S  u. C2 S/ _                        e.printStackTrace(System.err);
8 @7 Y3 @# v+ a                        //System.out.println(e);
$ D  b; j% T+ S/ r  x: ^- b: i                        System.exit(1);
8 Q$ K7 |2 `. [6 r" ?                }
2 _9 f" N6 N1 Q
) u, r5 B; S) [! ^, f+ }1 F- J& [7 W+ Y0 p6 l4 a0 @/ O
        }  f- H$ }  F6 w  v$ `/ V
6 |. o: ~5 i3 M+ A
        private void swarmSetp() {/ e6 b! W/ R0 J- j/ {  g! c. U
                list.addLast(new Agent(Id));
5 ~6 T! u; Z+ [) \5 F# R                Id++;9 L) [# w: N, G& e: e' s0 U
        }8 X( [9 ^; }0 C; H8 k: l
: D( M- u# c- s! H2 b7 ^, S% a- v
        public Activity activateIn(Swarm context) {
' N/ G5 B. z& t; g4 ]                super.activateIn(context);
# v* S  l* g6 a0 d                schedule.activateIn(this);! r, F$ {. i7 G( Q# L. q
                return getActivity();) {$ L6 g  w# n$ `9 ~, m7 N1 @
        }
- X7 E% p! Z  X* V1 [! N
& u! c  [0 B1 }8 W( F        public static void main(String[] args) {
- ]. |$ y2 O% m/ x9 O' L7 T4 J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 a8 L. @. F; }# F& H- e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  [$ |, V$ V$ W$ ?/ R" G                swarms.buildObjects();& H. D3 ]+ ]& L6 O
                swarms.buildActions();3 a- B" f5 X& @3 ^+ K; _3 v+ c
                swarms.activateIn(null).run();+ l2 P0 |# P5 D
        }) A$ d- V7 l: R
' N) C( T0 |2 v! s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-13 08:19 , Processed in 0.015781 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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