设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9606|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. g6 r5 ^6 h) _2 i, T# q2 C" v0 E$ Y) n% C7 \4 O9 t2 p( }2 G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! f# K4 K, `6 M: @% Q% x' B2 @' f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% j- ~7 G2 Z9 E: v8 U$ B$ d6 c! G
swarm.SignatureNotFoundException. B, r6 r0 K5 O& y
        at swarm.Selector.<init>(Selector.java:76)  ]3 u. {4 c/ O" t% ]9 L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 ~( q+ T* N  {7 H/ m% P        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 ]" a/ `0 J, q* o. }+ w

( G, P0 \4 m& W
) P  P# y7 Z, {5 K  Q( D5 Gimport swarm.objectbase.SwarmImpl;
4 A8 X% K0 }2 S' {5 @import swarm.objectbase.Swarm;9 A3 z" y. h* M# s
import swarm.activity.ScheduleImpl;
. C( W5 ]! r2 ^- N& v' bimport swarm.activity.Activity;
# M+ e9 A4 D1 x1 Y7 k7 jimport swarm.activity.ActionGroupImpl;) P8 a' b9 u7 U4 b, k  a
import swarm.collections.ListImpl;
$ f7 o2 [+ q2 t2 S6 gimport swarm.defobj.Zone; ' z2 D6 K# \1 s0 ^0 s: d7 d% R" s) T
import swarm.Globals;
. S/ m: F# z4 E; G3 wimport swarm.Selector;
8 A2 H3 c( m* N. J8 X0 c3 Dimport swarm.activity.ActionGroup; , n* t5 T" I' Z; L5 C
class Agent {* Y% W5 J, o, ~6 j1 Q
        char id;* U7 n8 W9 ^  U) |! @) c
) g5 O0 d1 x; P- e
        Agent(char id) {. T7 l( }# p' n3 f* L
                this.id = id;
9 K. o& w: g) |5 U1 \+ A/ n- S        }* _8 O3 w9 `% ~5 \

3 l& U0 ]% p0 r2 r6 Z$ G        public void agentStep() {) q$ L- y" B. t
                System.out.println(id + ":" + Globals.env.getCurrentTime());% h: o5 r/ N% [" X& ~
        }
4 _6 ]0 D# n" p- A; K9 x% ?% L}
' ~3 }& V& J% r4 P0 m$ H4 E
% B/ W1 c9 F" Dpublic class ActionGroupDemo extends SwarmImpl {# r( S6 f! i6 D9 C- V$ R' g6 Q3 C9 F
        ScheduleImpl schedule;
; @" |% B! q  E# ~% \        ActionGroupImpl actionGroup;
5 S0 y' c1 N) v/ }' O# c. `5 {        ListImpl list;; J0 }7 B! B- d* Q: q
        char Id = 'a';
( d" l+ L5 h% y- C8 R5 }  `
' c0 _' Z/ U+ H7 x        ActionGroupDemo(Zone aZone) {4 W; e$ Y! `/ Y4 S
                super(aZone);
8 z7 M0 H7 _; Y7 M% J                list = new ListImpl(aZone);1 w& y: R# m: W4 S5 @
                swarmSetp();
! t  j* u6 A( d5 K                actionGroup = new ActionGroupImpl(aZone);7 F; \: b& S) o9 ]# Z, r
                schedule = new ScheduleImpl(aZone);
  X, ], I$ p! O( J- T9 L$ q                try {
0 }6 [( K. F6 e, x( P7 u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 {% A) f9 t  C% O5 z  h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, L# e6 ~. k& R+ X$ `' H" y
                        5 q  h6 Q  ?5 W# h# ]! I* G: C+ b
                        actionGroup.createActionForEach$message(list, agentSel);
5 U$ z# M) m  j3 P2 Z: R; G                        actionGroup.createActionTo$message(this, swarmSel);
4 d) X; r- Q6 F. w# h3 W* F0 T                        schedule.at$createAction(0, actionGroup);- y4 m$ I2 Q9 G
                        schedule.at$createAction(1, actionGroup);/ `5 r" l* ]0 [8 e4 S
                        schedule.at$createAction(2, actionGroup);. f( b2 s2 A# e! @5 t3 Z' A& Q1 \8 f
  t  X$ O" T/ `9 F3 {, ^0 x  t
                } catch (Exception e) {
) c' m5 ]+ D4 \- \9 @; X. l                        e.printStackTrace(System.err);) H/ ^( M$ T/ I
                        //System.out.println(e);
% U  u* r' ]9 L& I  z( b                        System.exit(1);$ W, I) e+ o  s; o; m3 \# v
                }: t3 S7 J  {* e( R  G% @

# p" W) G$ o+ O# ~" ]2 _4 c. B3 l  G# M8 _- F* k
        }+ x( ]9 l7 `% b5 Z
. T5 A7 v- ^" ^! J* d
        private void swarmSetp() {
# K8 t) L; P* L                list.addLast(new Agent(Id));$ |( I! K- t( K2 J9 m0 ]3 ^
                Id++;
7 U& ~- D) Y9 c        }
' J6 u0 {6 J* t3 @- t
6 P9 ?" F$ i0 u  L& i& M        public Activity activateIn(Swarm context) {; Y. x* j* a7 l7 G, y
                super.activateIn(context);
1 P# n6 D( s6 w5 H1 l% c2 a                schedule.activateIn(this);* a2 N1 M8 ?* L4 x3 I
                return getActivity();
2 I" A/ y" U5 s# \' _8 |1 }        }8 x5 x8 W: G/ I- t' }6 d! ]: w
& F: j2 P# l' f  i3 C
        public static void main(String[] args) {
8 a! @" t( _' p2 q: n7 L! ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 @' k1 G; n& U7 J& ]8 z% X
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ l1 V7 q! P9 N: W! q9 ^+ q2 T
                swarms.buildObjects();" G1 i& w* I3 M4 n, S
                swarms.buildActions();
" |; W; ?3 Q9 {& V7 o' p* ]/ L) X                swarms.activateIn(null).run();) O( e' R% |, Y7 j
        }
+ D7 S1 B9 p" Z* ~# y- k) Q, s% X% Z8 `/ t$ V. t- o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-16 18:32 , Processed in 0.024386 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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