设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5709|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* A/ Q, S& v% S5 z  `1 ?2 s# H" t5 J6 y9 z) c: j' e& e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# K% a, N2 h5 H# B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; s+ b% T. o5 ~! r
swarm.SignatureNotFoundException6 V9 Y' F5 _! i0 r7 y0 C) }
        at swarm.Selector.<init>(Selector.java:76)
: W& T+ r! I: x, E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 S6 X# L. N1 a! J6 W
        at ActionGroupDemo.main(ActionGroupDemo.java:67); v' A  B) c' v' u& r6 A
7 K0 n" r$ [! _7 H: V% Z" H% m7 d

- l8 C7 n' [. _, Bimport swarm.objectbase.SwarmImpl;' U9 o9 |8 [$ {8 n
import swarm.objectbase.Swarm;5 q! E3 h8 c& j. \3 F
import swarm.activity.ScheduleImpl;3 w3 R4 d; m3 G1 R& |! m1 S
import swarm.activity.Activity;- k9 b1 ^$ |  ~9 C' E! b4 K4 e
import swarm.activity.ActionGroupImpl;  ~) {: ]. e9 @3 W0 F$ t
import swarm.collections.ListImpl;
1 `5 M, j. x) s! l& Z( i0 Y$ x$ x1 iimport swarm.defobj.Zone; & s) G! G  C7 X& M% o4 K! @
import swarm.Globals;) p! W- _( _6 u2 W& X
import swarm.Selector;9 f3 i# o4 J6 z
import swarm.activity.ActionGroup;
  I; c2 @8 g* @% S' A  Tclass Agent {
9 d- A" _7 \! l; i% Y        char id;$ b3 U% R  N5 S) v

* u# O9 z5 M" s, R7 A9 ^+ a        Agent(char id) {
) K+ v8 a9 w, j6 G                this.id = id;! Z+ T' A* j% S
        }
* v8 k; G* L8 a7 M; \  A2 {0 @5 H8 g) y: }, _3 }$ h7 s
        public void agentStep() {
* }" N( F/ J( J, L& _                System.out.println(id + ":" + Globals.env.getCurrentTime());
! `5 q6 q- E0 n        }8 N" }4 g9 Z8 ?
}
# }- l( y; m" ~! a) R3 f
' x- J+ A4 W* b2 \. `public class ActionGroupDemo extends SwarmImpl {  n& B$ L3 u. H4 I5 q5 J
        ScheduleImpl schedule;
2 W  e* C0 f' X0 h" Y7 w5 _9 Q        ActionGroupImpl actionGroup;
2 T/ K9 B7 K: \+ U' R1 Y        ListImpl list;, D' x2 y5 ?  c" _0 Q4 z
        char Id = 'a';# e& l# ~9 F& D$ S' T! F( i; U
) x# k$ A1 F+ ~: X
        ActionGroupDemo(Zone aZone) {- k3 w& [6 Y" N8 ~/ ~2 l6 V6 e
                super(aZone);$ V. G. }5 N6 h( q3 h
                list = new ListImpl(aZone);
7 t/ `$ ^2 i. D* m; ~/ O                swarmSetp();
7 K2 x4 Q+ e" Y; w                actionGroup = new ActionGroupImpl(aZone);9 _" a2 W/ s5 s
                schedule = new ScheduleImpl(aZone);
, }/ ~! H6 l6 S3 s& B                try {- M, w. W  Q  U: t9 Y9 h+ Q! c- H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 j+ n/ R. m- Q7 q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 @# _. D) `% w/ y( G                        1 i# M# }% D3 B5 l
                        actionGroup.createActionForEach$message(list, agentSel);0 H* p8 m/ X  C. ?3 F
                        actionGroup.createActionTo$message(this, swarmSel);
( X2 F: F6 I; k$ S! h4 y                        schedule.at$createAction(0, actionGroup);6 I1 m5 i* H0 e, F5 b
                        schedule.at$createAction(1, actionGroup);
: l6 ^/ O+ }; a+ S                        schedule.at$createAction(2, actionGroup);
& Y" j# I+ O& r# c5 @' X9 N8 _1 M0 h3 R4 L* u% s
                } catch (Exception e) {
$ t) b- a1 U" _* @/ j% U                        e.printStackTrace(System.err);+ O9 }1 R9 }: s4 J' R: c
                        //System.out.println(e);
2 O8 F! A5 J& @0 U' ^' k) v, j                        System.exit(1);) V- _0 z) V7 k0 N  t
                }
9 s+ Y" t& y; b0 q  E0 L3 a$ C$ ?% C4 i) v5 l# J2 b  s8 w5 T: ^
3 `" u1 H4 E, C% A7 r- P9 A
        }1 @/ S* h4 u6 u# k. S
" V" p1 `1 A" D4 V6 _
        private void swarmSetp() {7 O( ?/ V' U2 F( h0 A
                list.addLast(new Agent(Id));
' |6 _, |! P5 z, ?5 D                Id++;
! w2 N" |2 U7 {0 c0 o7 T% `$ D  U        }
$ T. Z( }7 W) z0 V" T% F) e8 I: h8 g
        public Activity activateIn(Swarm context) {& `) O) K0 W% @' F2 w
                super.activateIn(context);
! d$ A( }9 o! J                schedule.activateIn(this);
3 W  s& Y; f4 z+ l; d2 }; R. u% b                return getActivity();
8 l% u" N# }  U8 w        }5 \3 d$ x. i9 w

& M) o3 X! Y& Q# }7 c        public static void main(String[] args) {
( M* I( V5 w4 H; t3 G0 f8 P9 v7 Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 N+ F, m+ \9 _: H
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, E0 K. M1 r2 D. n                swarms.buildObjects();
- V( Y2 B9 N) @4 V( _2 ]/ M* {                swarms.buildActions();
) h5 f6 ]3 _+ N- h$ X$ ]2 L/ P                swarms.activateIn(null).run();% `4 w5 v% u( ^6 N
        }0 t! `% }/ A) q* _
1 ?0 C6 g, q" O. Y4 ~( w! L& F* [: `6 R
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-20 11:51 , Processed in 0.014213 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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