设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10780|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# c0 ?+ f8 M/ _, l' `  g
; a  i% p6 R" o+ y, z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 N* T9 s' Z+ z4 d6 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( F0 R  j9 a2 X, B* _
swarm.SignatureNotFoundException7 z" K9 u9 I( @2 d9 q
        at swarm.Selector.<init>(Selector.java:76)9 n$ j/ @  w7 x. P
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% X7 s/ Z7 ]+ c, C        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 ]8 y/ S  m. h, C; o' ^

9 X* w) I( L8 Z7 _* |1 g8 z4 ~! s: L$ N1 e4 E
import swarm.objectbase.SwarmImpl;
! i6 N2 I6 G4 \2 Oimport swarm.objectbase.Swarm;
, R5 Z+ ]0 t. J% n+ }import swarm.activity.ScheduleImpl;
2 T$ _& w; F% N6 p" P; J$ E) kimport swarm.activity.Activity;, Q! s1 f  c1 P3 M: l
import swarm.activity.ActionGroupImpl;
3 x- ?/ S+ h4 }( v5 `import swarm.collections.ListImpl;
3 i3 r# g0 T" |; Qimport swarm.defobj.Zone; , l" O1 ]4 C2 v
import swarm.Globals;: N8 J7 c9 v9 ~: Z# P
import swarm.Selector;4 x! d" P. S0 P' V* \8 A- o: d
import swarm.activity.ActionGroup;
9 l4 U/ u. a6 |6 Z5 R( ~+ Hclass Agent {
+ {/ y1 G6 ]9 j* _1 I" g* U        char id;
7 v& J: ^# f! _( r: U1 f5 ]
! s- h5 d& T( }* q% ?$ @* a        Agent(char id) {
6 c' N5 T) ^$ N                this.id = id;
) S4 }# i& E+ ^1 o8 ?        }
: s3 E1 k. ?" U7 `& x9 R) G$ X8 K( e! X5 F3 f0 a
        public void agentStep() {
8 a# i; v. |* x& \                System.out.println(id + ":" + Globals.env.getCurrentTime());
# ]) K: n# Y1 U9 G. a- k4 E# w        }/ y* ?  J2 H' C: q' \! V5 d
}
/ m4 S4 A, x2 W# F5 K
. A6 N/ g$ e. v" E# ^$ n7 D7 F7 ~public class ActionGroupDemo extends SwarmImpl {
3 ]4 `& {: O# [$ y! z2 W( L( Z        ScheduleImpl schedule;0 F+ z* U5 {, g- ?0 K
        ActionGroupImpl actionGroup;
/ l" R1 k1 \& j5 ]6 [        ListImpl list;  V1 s$ R9 z' K+ P
        char Id = 'a';" _  {" r  j0 D- _8 K7 }6 A
# z, E9 ^5 P- f* }1 l. _
        ActionGroupDemo(Zone aZone) {3 r  U, D2 T& T6 @$ ~* S0 b& h2 m  M
                super(aZone);
. i0 Z- K/ Z& c) D9 p( l4 v4 `                list = new ListImpl(aZone);( y. m  O% u/ y
                swarmSetp();
) |, t+ U# b1 g9 e2 K; X  [                actionGroup = new ActionGroupImpl(aZone);% J8 I' T9 P! v- _, M2 C' F
                schedule = new ScheduleImpl(aZone);
4 x  ]/ Y, X. g" T5 G                try {" b% |/ P8 \8 @% l& j4 h/ _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 m2 g; T* H  ^
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 W- L0 `  m  g                        
$ }! @6 C  p1 F4 T! v3 D                        actionGroup.createActionForEach$message(list, agentSel);- v  J8 I2 Q/ e6 n
                        actionGroup.createActionTo$message(this, swarmSel);
) j+ I+ |$ x8 e; k                        schedule.at$createAction(0, actionGroup);
! f5 d6 A# ]- x7 F7 m                        schedule.at$createAction(1, actionGroup);+ _6 p( K! a0 {7 z8 P  [; G/ W
                        schedule.at$createAction(2, actionGroup);
3 ^! h6 w: i9 h- o1 W& F5 v8 T, A; N5 D3 d
                } catch (Exception e) {
: c( J' E9 e# F& n0 }+ _! E" F6 z                        e.printStackTrace(System.err);+ X  B7 @  [8 Z4 _
                        //System.out.println(e);
5 W, u8 A& J# c3 ?0 U                        System.exit(1);
( q2 p- [1 v/ f, w6 O8 z                }
- c! b6 L4 T5 P7 p4 q/ p( O& a7 N- W- ^& i, L$ ~7 V6 E% `
8 c" E9 c$ J5 G
        }5 `) l  O' q9 v7 Z$ o& N

+ K2 q6 V. O, ?7 s, T3 Z2 r% Z7 `        private void swarmSetp() {
4 t' p6 l& r1 y2 v* M9 c9 _                list.addLast(new Agent(Id));
; d% i+ c1 }$ \9 A5 l$ Z                Id++;) B/ r, [* Z2 m
        }0 Z  E4 }( W. Q; h9 r
# D/ {/ t2 Y  J3 b5 q8 W4 T' c
        public Activity activateIn(Swarm context) {# j1 D( u, o( u5 K  ~- O
                super.activateIn(context);
0 `+ Y9 r. d, U, Y. @: A$ r2 {+ d1 T                schedule.activateIn(this);
: f1 N4 A  ]9 B, w' d+ R/ L8 }( x+ e                return getActivity();
3 r  e4 W- y0 j6 e  G" ]! y        }
0 n4 q& h: Y* ]0 ~6 z$ H
5 R2 @3 v' q2 o3 c0 f  E        public static void main(String[] args) {2 B% l" L% Q4 A" S6 D9 |1 }
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( }8 S  C: h9 p2 W( n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! M! L6 P) t5 s7 L/ ^6 T' O
                swarms.buildObjects();# c, N( K5 s# z2 J- B
                swarms.buildActions();9 r2 R4 R* y9 u$ s5 C+ \
                swarms.activateIn(null).run();
: q: }8 W! P. t( l- B+ J5 T        }
3 g$ P9 B) f7 U2 i& k, N
. D! k) u3 V1 H) X% c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 12:23 , Processed in 0.017447 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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