设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12326|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " C3 {( u8 r1 ]" C" g9 @# D7 D% P
6 g4 g, \% G# U: t0 c: m( {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 v" v5 Q5 g* @3 z; U. [, H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 K$ }# i6 F# c8 m5 O. Qswarm.SignatureNotFoundException5 |; D! u" O; h  U+ q- g4 X
        at swarm.Selector.<init>(Selector.java:76)
( u/ V, K3 t8 P) v$ E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 G. {" M- a5 `: w! z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ v- U* J! W3 C1 Y/ d/ G6 m) z
% I" }2 c* l8 E; E  u. B4 z6 `( U( d6 T: G
import swarm.objectbase.SwarmImpl;
3 O; r6 G) J4 z% Oimport swarm.objectbase.Swarm;
8 d- O7 @/ v+ I. E' M, y" oimport swarm.activity.ScheduleImpl;
% |/ ?0 |% E* Iimport swarm.activity.Activity;& b$ A6 I$ E6 ^! `6 Z6 t: z- w  C, m
import swarm.activity.ActionGroupImpl;
( P8 k. }4 v% o1 Nimport swarm.collections.ListImpl;1 L" j: P5 _$ J$ F" T& R! L
import swarm.defobj.Zone; * j4 b  A! k. l4 j8 U; Q" ]3 C
import swarm.Globals;
, Q' e: A# [! w- O" Limport swarm.Selector;
6 u$ C" Y& f7 a  h+ Yimport swarm.activity.ActionGroup;
* `3 L1 T, z9 B$ }' m8 Sclass Agent {% }3 Q( j9 W& X- h5 Z
        char id;! e2 S5 R: L. [  A4 \
1 f' E" {5 S- j- {9 G
        Agent(char id) {
& O$ ?' z/ o0 g5 R# ]3 e; r& n! X3 u" p                this.id = id;5 b6 u# x5 f( h. f; g
        }, {* R" C, ]# ~) n. \+ @" d% }& v8 J
2 z  F- D; r  P7 B& K! W
        public void agentStep() {
: ]( Y# @* Y3 b& q$ j                System.out.println(id + ":" + Globals.env.getCurrentTime());
( ~) L6 j8 b/ w7 [. r) ?" C2 n3 x        }
4 V9 i" A. ]  |: U, I}- C# L  H& z$ @

- ~, X8 t; g2 \) ]9 Qpublic class ActionGroupDemo extends SwarmImpl {8 j  G) g! R& s$ j' V6 _
        ScheduleImpl schedule;
0 Q2 G% P. p5 h* f) C        ActionGroupImpl actionGroup;
- z" J  o1 _( V0 E, W        ListImpl list;, N& D+ C. h3 y
        char Id = 'a';
) B# J, k7 S/ `
6 |8 B5 a: D5 s        ActionGroupDemo(Zone aZone) {
: u( h3 f* t" V2 i0 V                super(aZone);0 X3 z* F* H. c) ~" Y' ~
                list = new ListImpl(aZone);
5 k- i! y* v* ?! g! T                swarmSetp();* \6 e# ~7 s$ o" J
                actionGroup = new ActionGroupImpl(aZone);3 D$ r  w; B2 L6 y* E0 v
                schedule = new ScheduleImpl(aZone);0 q2 U' W" V: J
                try {
5 e5 {) m* X2 w" f9 G* {6 v& p. M) R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( ?3 r: e1 l: I; s6 @
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& D0 k( _3 M$ @% n  P  p
                        
, l" [  {' ~( T' L3 G  G6 Q( A                        actionGroup.createActionForEach$message(list, agentSel);
" g# T- |7 V3 S% j6 E" I% H7 T                        actionGroup.createActionTo$message(this, swarmSel);
% w- M, B4 y2 a- h3 ]7 V0 [                        schedule.at$createAction(0, actionGroup);
/ [9 L3 Q# z2 ?1 l) j& @+ k                        schedule.at$createAction(1, actionGroup);5 y; D" \) N' H0 B. ?
                        schedule.at$createAction(2, actionGroup);. i( j, u/ B/ ~

1 J' y  N/ l5 ^2 k" r7 C! x                } catch (Exception e) {
5 L/ f/ N% p2 P. ~                        e.printStackTrace(System.err);3 ]4 T$ C; E6 W: f/ c1 j
                        //System.out.println(e);9 \, e  G# K: v% u! g
                        System.exit(1);
* H2 o  J7 h. T3 [, ?                }
6 x8 s4 \0 o) I6 g' y( `3 M- W5 r0 g. F7 P# `; A& F
1 w3 W% c- s" K* X' K% p
        }/ w) R# I4 g, d  \

8 n6 A" U+ |" ?* f' X        private void swarmSetp() {& t; I, [' e$ J- {
                list.addLast(new Agent(Id));
- N. b$ E1 C: ~" W' j8 P. C# o* f                Id++;
' [9 {4 J% A; Z- ]$ S7 t- `; x0 C, a        }6 ]! t% b) q# z; W3 h2 L1 C
. M* G3 V' J" Q% P
        public Activity activateIn(Swarm context) {
$ W2 Z# f/ g8 e0 S$ R1 D0 g) ]                super.activateIn(context);+ S. f8 m- r4 h3 O# N
                schedule.activateIn(this);
! v1 v5 D, f3 Z9 |+ O                return getActivity();
/ I( G1 Y, m& H( d* l6 o9 @2 z        }
- B' [' U. O6 i
' e2 e6 Y3 w) {. a7 ^: Y        public static void main(String[] args) {$ K6 V, p2 E* u/ L! l% T  @6 F
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! W2 h" Q4 j/ K' P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 N2 Y; Q. i; G( x0 @
                swarms.buildObjects();& R- v6 [# Z: r+ e$ n& \+ B+ |
                swarms.buildActions();
/ o9 I( h. r& S- _" p# }8 n" A                swarms.activateIn(null).run();
& [! @# l3 V$ k# F" b" P        }& H7 w1 D* c; p" t! ?

5 `3 t& c0 a+ s. M; I. W}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-5 14:10 , Processed in 0.018578 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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