设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12117|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( N0 \" t) G/ E3 b/ o1 D
) t+ \0 F# f7 {; ?' ^7 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; w+ Y3 z) {& ?6 o1 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# E$ }- p/ M- K+ G, _: t
swarm.SignatureNotFoundException; u- i( n( ^( E" x% S
        at swarm.Selector.<init>(Selector.java:76)3 _# g& u! H- f. k) E8 \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! O' u( g$ X2 C        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( @+ F( ]: u8 d4 q) j/ ]) Y( M1 A; a" I/ Z) X1 }7 F, B
+ E7 u/ g5 A; p+ C- e! W
import swarm.objectbase.SwarmImpl;( L" W% q$ n- ~. `1 Y8 k
import swarm.objectbase.Swarm;) @: S0 f  o% y: W' F' ~& U4 g
import swarm.activity.ScheduleImpl;) c, N3 A) \5 Y7 v, d  ?# _
import swarm.activity.Activity;
; u4 V+ T# g! r( ^* K" o) bimport swarm.activity.ActionGroupImpl;/ }" J0 @% s3 ~! R9 z% \; b1 G+ ?
import swarm.collections.ListImpl;
8 n. K8 ^" h6 x' s/ m! Limport swarm.defobj.Zone;
! G8 n5 \0 [  t4 eimport swarm.Globals;
7 _  B6 c& z7 r8 Q& l" @, d$ Vimport swarm.Selector;7 f* f' v: j  A  l, J; m$ Q. P
import swarm.activity.ActionGroup; ( f) U# e% W4 T, M0 Y
class Agent {
6 f/ J2 N# P7 u, n1 V1 h        char id;8 o1 z) y+ e' {

  @7 l; v: w/ u& {& ]        Agent(char id) {: U9 _  J! c; O7 ]
                this.id = id;
. T) Z( @: c' G  f* t( c4 M: T        }
7 A8 N3 \9 ]% h; R
, I$ b' ^8 s! b% U6 \8 ^6 X- P& k2 D) ?        public void agentStep() {
8 ?" K% `; e- e. W: x  u                System.out.println(id + ":" + Globals.env.getCurrentTime());& p( D* Z( A% h( x5 p
        }
8 c' [! v' A# [# o}* y6 p. w: I. ?' J3 ]

" V5 e9 P% t' Z! A) O* xpublic class ActionGroupDemo extends SwarmImpl {
. x3 ~% ?( s0 B- u        ScheduleImpl schedule;1 c' i# C! X' ?0 G& y9 N, p! g3 \& o
        ActionGroupImpl actionGroup;
1 y# ?( Q7 o" W& K. z        ListImpl list;; W& Q6 `( o7 X+ S- C8 g7 X0 c; X
        char Id = 'a';( e7 e  E) ]9 t2 r+ ^% r
3 ~0 M/ \- I8 ^+ H- `: x" G: o* x
        ActionGroupDemo(Zone aZone) {3 o0 p- W0 d3 z4 s5 c( w
                super(aZone);
7 V7 t" I. T3 b$ t2 ~& A+ s                list = new ListImpl(aZone);
! a# i5 ^- z. g/ f, O% j0 {( g                swarmSetp();8 h' F. L1 ~: s- `1 y2 m" _  p
                actionGroup = new ActionGroupImpl(aZone);& {1 b0 N; P; z3 f7 _/ l. V* H
                schedule = new ScheduleImpl(aZone);( G, ^- b4 I- o, M$ V) C7 a3 b
                try {
# B7 J  Z) W" [; Y% c% f                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* f/ {* H! w; X' V; g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  U9 U0 H2 G- `) S% v" E                        8 J. _5 \* V3 z$ t
                        actionGroup.createActionForEach$message(list, agentSel);
* y8 U- f$ c. o4 C$ T' m  U                        actionGroup.createActionTo$message(this, swarmSel);3 H! L/ V* P  w
                        schedule.at$createAction(0, actionGroup);0 o8 ]$ b0 @8 U. \' h
                        schedule.at$createAction(1, actionGroup);/ E0 e/ R6 q1 ^  a
                        schedule.at$createAction(2, actionGroup);
3 L, A' g5 k- A0 s+ P+ }5 t3 P' C% C5 Q7 r& B4 [
                } catch (Exception e) {7 J% P: ^1 K6 R3 [) W
                        e.printStackTrace(System.err);
2 |) ?3 }+ ~; @1 T                        //System.out.println(e);# t  }7 v. u8 C; `, F
                        System.exit(1);
+ D% m7 h5 s+ h. N. ^; W                }% s1 I/ ?! @6 T  v7 s

1 G; H5 K/ Y) c+ S5 u# V
1 N5 e5 _4 o/ |6 r% v- n        }# E3 c/ B( I& n' @* [/ g
" N8 L- |) r8 w# U
        private void swarmSetp() {8 ^+ N* q* U( ^+ k( f
                list.addLast(new Agent(Id));+ _8 U! I: f# k6 _0 {
                Id++;7 b1 U) g5 ?0 }* L: Y; U
        }
4 `: E3 o& c" k' `3 O* O
2 `/ K0 {& c1 A, b! z3 P9 L" w        public Activity activateIn(Swarm context) {
. z/ V% c! Y+ R! P. x$ y                super.activateIn(context);
& C5 h2 W  ?5 O                schedule.activateIn(this);  E* a" r) _4 U' [! ~6 ]' X+ [: y' d9 {
                return getActivity();
# \+ [% n" w* y9 y$ s1 S; m8 G3 @        }' h: X7 L# X. K

& b, G. @! @% P+ T" |! {3 |        public static void main(String[] args) {
- \, `1 q0 Q3 w4 a' @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, q$ D) `$ e4 p+ N4 U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 S( E( |. e6 }9 w$ X/ c8 {& O, u                swarms.buildObjects();
) G/ ^, _4 @& `1 H4 }0 y                swarms.buildActions();, S# x) G( ]  [& S
                swarms.activateIn(null).run();" D% g* H* U; i! @2 l6 Z
        }. f! k: u# ^9 j% Y6 P& @6 o
0 L4 p5 m3 t8 |8 s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 22:16 , Processed in 0.014038 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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