设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11050|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! Y$ x' S( c" N
1 q) f5 f" y/ y4 E4 x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( x4 `, X7 R# Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* ]9 E. U1 _% g( H2 Q
swarm.SignatureNotFoundException2 o& ^& y' E. ^4 P
        at swarm.Selector.<init>(Selector.java:76)% \- e/ d5 v. {# @; Y3 G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) J. b4 P- {2 `* \7 q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* L2 Z8 E; C/ ]9 A* U2 f4 t
) N' L& ]9 o+ i8 v' W8 X# ^! l
' s- x  t# y6 n( Wimport swarm.objectbase.SwarmImpl;
5 [$ c7 r$ Y$ [; k, [0 Mimport swarm.objectbase.Swarm;
# b0 H/ q: O- W% y! Zimport swarm.activity.ScheduleImpl;
: T) I! G; c2 i' N: I! fimport swarm.activity.Activity;
+ e9 m, v( _% m, W. `+ Zimport swarm.activity.ActionGroupImpl;9 O, H' B  j% {  j6 _
import swarm.collections.ListImpl;% _8 E" D! ?( X9 D
import swarm.defobj.Zone;
& O4 R! ~% w0 \: s6 Kimport swarm.Globals;
9 h6 R& D" u0 `9 n, bimport swarm.Selector;, [" h3 I) V% }& G( M% |
import swarm.activity.ActionGroup;
" i* Y% G# G. h* t% k9 h4 oclass Agent {
+ y* d, w% `" K5 m. [; s+ s, Y' X' [        char id;$ e6 Z& y9 Z5 F! X0 @' }) l

- Z7 @7 Z) h1 t  V9 B, O        Agent(char id) {
4 \' W% a' J" o* C+ ^; m& u' Q                this.id = id;
4 ~) G* x9 [: b, ^, Z        }& b# k0 {3 o$ z, C- j

7 R2 N8 \; b  z* k) O  c$ z3 g5 W, J& t        public void agentStep() {/ q4 T; ?4 A( T6 r1 e8 T
                System.out.println(id + ":" + Globals.env.getCurrentTime());( Z( k/ W% q; }$ U
        }( n3 i; M/ I/ P. e* I3 V! n, a
}4 e/ Y0 d! Q8 v  u, t

0 D# o  z' a/ ppublic class ActionGroupDemo extends SwarmImpl {9 z' d8 C. R+ N% N0 Y  z
        ScheduleImpl schedule;
9 Q- ^8 u; T' e$ u# R. U        ActionGroupImpl actionGroup;& @! b. B3 A0 u% |1 a7 ?
        ListImpl list;
9 P8 W/ N+ P3 k0 ?. n        char Id = 'a';: J! y+ \- @7 B  _) j& u% M

+ z8 T1 D  K: _1 i5 }! f) j        ActionGroupDemo(Zone aZone) {
% ]- A& h! o' j  B3 A! [                super(aZone);
1 v" L* n  T" c& T  F                list = new ListImpl(aZone);
) U# w. @: N& Z# K- u) ^                swarmSetp();8 ~2 b) s6 m* g6 t
                actionGroup = new ActionGroupImpl(aZone);6 h, ^# g+ y! D3 `$ V
                schedule = new ScheduleImpl(aZone);+ Z' _  q" u( y
                try {  Q! @9 j4 D# I7 V) ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) G" l  h7 a# U8 I9 n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ C% G  x. j# o0 w* C" f0 h                        ' V& f( q0 M5 f
                        actionGroup.createActionForEach$message(list, agentSel);' |' ]: i  V( z, V0 A; n* n
                        actionGroup.createActionTo$message(this, swarmSel);2 [$ Q7 |6 g" r0 K; u0 p
                        schedule.at$createAction(0, actionGroup);# a( ]! M/ H. Y' ~- s( x
                        schedule.at$createAction(1, actionGroup);
2 z0 F9 f/ E3 M- e2 ]' ~                        schedule.at$createAction(2, actionGroup);0 _- P$ v- i- U
9 S: D: ~% a/ c7 p' @3 V2 [, X
                } catch (Exception e) {
7 A- e, W5 t2 B+ V  y: B                        e.printStackTrace(System.err);# t  j( q* j' Q) @
                        //System.out.println(e);9 j: |/ M  ^7 @6 \! O7 y3 c* v
                        System.exit(1);
) p& i$ \0 |4 ?  k( K6 R5 c  R                }
9 v. s9 E7 G- k+ P# x+ v: Z* [/ P, L6 |" I, p  i

) M) X: \  P. F0 ~4 {1 H        }
2 `9 W5 f0 O  v0 x2 L5 N* E
4 ?, u8 }/ O2 r        private void swarmSetp() {- k5 C5 e' Z6 ^) B- @
                list.addLast(new Agent(Id));
6 A. A# B9 n5 ^                Id++;
% |+ |1 [) b; L  J' _        }
9 {  P6 ?7 u; x( e0 _: J) r, ]8 v" Q5 O# V
        public Activity activateIn(Swarm context) {
9 \  r, a1 F. J& l* R                super.activateIn(context);
% z* Q  G+ a) ~                schedule.activateIn(this);8 L* A( y0 f7 O) k6 ~
                return getActivity();
9 ?2 U3 I# u; I) J- s  Q) D        }
$ K/ y( p. C- |2 ~* }) A+ V0 B$ r6 w7 H
        public static void main(String[] args) {
2 F* R. t- X8 K3 P* ^& w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" `, |( n1 N5 s  d) |. q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 f2 K; G! j" {& ]$ k, N* \                swarms.buildObjects();
  y. n2 g, K. h                swarms.buildActions();/ p9 Q$ K+ E- Y2 u( w& a
                swarms.activateIn(null).run();
4 O' S6 W; K# v! I/ a        }
% q$ \' o- {8 |6 g8 S6 i7 }7 d: m. ~! s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 12:53 , Processed in 0.017845 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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