设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5194|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ w6 F6 k$ Q9 l0 ]: S5 y+ P

  B- G2 l5 H( Y& r: O: _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: i& \2 M. `4 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 _7 {# O8 l- d
swarm.SignatureNotFoundException
( j$ j' @4 V5 x+ C2 M8 n+ z  ?+ D        at swarm.Selector.<init>(Selector.java:76)7 O8 J9 A" g4 O! q& J" w$ T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( v0 r* T# B7 v8 S0 G3 _- H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- j# ?3 r/ y3 y& \, d; _$ r9 f; b  Y) H! O. M1 W
! G0 F. g3 ], H4 R2 W
import swarm.objectbase.SwarmImpl;
8 I5 b" c8 S; e7 dimport swarm.objectbase.Swarm;9 I$ Q8 s/ y3 _6 r
import swarm.activity.ScheduleImpl;8 L- p2 q1 L: M8 W0 [
import swarm.activity.Activity;
3 j" b" }  U9 Nimport swarm.activity.ActionGroupImpl;
/ E) y0 y, `/ K' aimport swarm.collections.ListImpl;
1 V; C# h. p+ u" w& bimport swarm.defobj.Zone;
/ H; D4 K/ P( g: @1 k2 F5 Nimport swarm.Globals;% Y9 F8 {! \5 h" d$ o* ?0 a. T1 F
import swarm.Selector;! i$ C9 h, L7 s
import swarm.activity.ActionGroup; , U1 i6 @4 ?' u' l
class Agent {
9 J) ~; ?5 v9 V/ f        char id;9 |7 n+ H9 K  q# W6 p  p" O

" L3 Y3 d9 w) W# v        Agent(char id) {
1 }" I) e6 p- m6 J( M/ [1 C                this.id = id;/ q/ c& P: S' e/ G. m! i
        }
8 T7 S( }6 n: r( o( d, I5 v) [7 ?' x  w- j7 D8 C
        public void agentStep() {
. R- x) n" k" N; M2 _                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 W7 l6 }# q) R8 _- B/ m! Q: t1 r        }& J: ~0 c' [0 |
}
1 y4 r# K2 Z3 P& ~3 X& _
1 T- N8 @. b% d4 n, u; O$ j' ?! z1 vpublic class ActionGroupDemo extends SwarmImpl {
  A! i% ~/ P5 g; l* M* G* Q8 Z        ScheduleImpl schedule;
1 L: \+ p$ M: p4 ?        ActionGroupImpl actionGroup;6 b) U4 L& ?9 X, C" g! x& p
        ListImpl list;
. ]3 N5 L) J) a9 W9 \: _# A        char Id = 'a';
9 _4 P' V3 _6 r# r. X) s* p( N% P$ \3 L9 }$ A! a
        ActionGroupDemo(Zone aZone) {
: w- ~  x, P' e  Z$ i* H1 k                super(aZone);" k$ c6 `' O8 V% ]0 L+ |
                list = new ListImpl(aZone);  e# D1 q: A; t1 v( h  u
                swarmSetp();
3 I' E2 E0 E7 l& n9 \                actionGroup = new ActionGroupImpl(aZone);- d* r% i" V2 p2 k4 c  c
                schedule = new ScheduleImpl(aZone);
) l# e; B2 k' n. g/ P+ v2 g! `                try {
/ G& e& p7 h) Q7 O) {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& M$ v" i" Q: C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) \, Y" Z, E+ e3 L; L& A                        3 t/ f( g2 Z  h! ]8 U1 C
                        actionGroup.createActionForEach$message(list, agentSel);
, [& h/ ?- }9 j' m( e  Y                        actionGroup.createActionTo$message(this, swarmSel);
7 k' _, ~; ^; C                        schedule.at$createAction(0, actionGroup);9 x, L5 ]6 {: G: y4 T1 T
                        schedule.at$createAction(1, actionGroup);
2 a. i- O, v: ~4 W# @3 G                        schedule.at$createAction(2, actionGroup);
! ]4 I/ [8 \" z
/ M- K+ x# U+ F0 [0 O+ p  t- Z                } catch (Exception e) {' R: a+ f5 x3 l) d  f9 \
                        e.printStackTrace(System.err);) D7 p) M! J  D' I7 s' r
                        //System.out.println(e);
; m! m( z% z$ l' J3 T! n4 o                        System.exit(1);
: }: k6 s  j1 S; _, ]3 E- y" u! I                }: E" p9 @5 |* D
- o  @* {! E- _7 I: K+ {  t

- z; L& a( c- E) y        }8 B. s3 {+ h# i" l3 x
4 o1 n% i6 f; b9 I  R0 F; y
        private void swarmSetp() {
$ M( j) B- o8 x# v& @; p+ ^- i$ A                list.addLast(new Agent(Id));
# g0 f/ \. Y/ `                Id++;7 f) g7 J- _# @0 W  v8 n2 t# g
        }
+ v6 _) v2 }( D# ^6 B, C, O. c2 J
2 U$ h' J) \7 j8 ]        public Activity activateIn(Swarm context) {
. t- q6 b- }, X2 C0 S- U: m                super.activateIn(context);: w+ c; j+ Q) n# h4 k+ f5 f
                schedule.activateIn(this);9 R% K. U0 _- J! S) y2 p, c1 }
                return getActivity();
4 P* r. C" D( H2 ~; ~2 R- M        }
3 X7 [+ g; p. o7 W7 [+ o/ V% w! T% E9 J/ d/ j
        public static void main(String[] args) {+ S+ X+ p- {# \" p
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' g% E) T' X" T9 m( p
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ N) ]* y0 p$ @, P8 R$ d0 I
                swarms.buildObjects();" \9 Z. e$ ?6 [
                swarms.buildActions();  q7 }. N2 r9 l
                swarms.activateIn(null).run();6 h% r% P. V) q  s
        }( I& O) Z! G. U) A/ [6 a6 V

! D, I/ A( l6 @& i- s& U4 r' Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-28 13:25 , Processed in 0.016638 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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