设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6565|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " w, i6 {2 K, }( f7 J, i
0 [+ ^! }$ m. F0 k* }2 ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 ^4 i2 K: G3 J2 `* {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' w6 J# I/ j2 P! V+ _
swarm.SignatureNotFoundException
; ]! m* Y; H4 v) e        at swarm.Selector.<init>(Selector.java:76)
4 [' k# B4 t1 H* f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) @) [8 B8 i0 C5 x% C7 ^3 ?
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% z/ F( Y& s3 P* L* d' e# H  O( @

7 w& L2 {2 V5 r0 b3 e: H/ Vimport swarm.objectbase.SwarmImpl;
/ Q9 Q& M% r- Y# z/ pimport swarm.objectbase.Swarm;
* V' w  n& B* Q) b% l0 @. A& _import swarm.activity.ScheduleImpl;
* ^+ l7 i8 F/ g- t' Yimport swarm.activity.Activity;  D& f$ g% ~% d1 c0 h
import swarm.activity.ActionGroupImpl;, b, @/ a& Z( ]4 ]
import swarm.collections.ListImpl;
& s$ w, ~, S) W; ]$ L$ ?9 }8 Dimport swarm.defobj.Zone; * G9 E3 y5 f' m: `7 Y& h6 z. T3 B! M
import swarm.Globals;( f( h) c  X5 |/ e; G
import swarm.Selector;3 x: j9 x9 M  [- f
import swarm.activity.ActionGroup;
1 F5 b! }, Q6 s1 I8 r/ a6 oclass Agent {7 J$ g  V& D/ A( L2 C* }1 i
        char id;
; L2 ]; E5 ]& S/ V" y( _( I
+ x) Z/ M) a9 {5 N, X# s. n3 P( f        Agent(char id) {# \. E6 H, Z+ |2 u5 H9 Z8 O
                this.id = id;
6 L4 G5 s: W9 X        }9 h. g! j) Q' b( z) w+ [" d
& M* p! y' h# T3 @
        public void agentStep() {
8 [9 S, v7 v& ~                System.out.println(id + ":" + Globals.env.getCurrentTime());
% D# K4 Q! b" a) ~  F  L+ s& v  O4 U        }
! I' `1 p, ^% e' b" v3 H, a9 q7 F}
+ Y- _0 k4 m. ]/ I  Z) T, Z1 z/ W1 B  `8 {
public class ActionGroupDemo extends SwarmImpl {# X8 C2 f9 V: b/ n
        ScheduleImpl schedule;
$ D; d& h/ h/ Z# ^8 m5 k        ActionGroupImpl actionGroup;
+ B( H+ ^1 k1 }        ListImpl list;3 M0 \# z% y1 s2 ^
        char Id = 'a';
' [2 ^  I. x0 Q5 c% U' D) u
$ ^& D( f4 {- H+ ]& H        ActionGroupDemo(Zone aZone) {; Y% f, \* o8 s5 j/ j$ J: R" g" L, K1 n
                super(aZone);3 G6 c* R/ q7 Q
                list = new ListImpl(aZone);* O: \( m) m4 G. p. J
                swarmSetp();! n: Q8 Q" X( \# q7 p
                actionGroup = new ActionGroupImpl(aZone);
. E5 k) K! a0 N* _2 ]                schedule = new ScheduleImpl(aZone);3 {3 w  [9 e0 G7 b6 ?" D5 T
                try {
# E& J9 H- O0 S2 c9 F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* l  x) H1 d2 u+ `, z5 G% A                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 R, g# c' {3 @. K3 T- e                        
3 p% \, P! ^2 @0 k. Q9 {' h                        actionGroup.createActionForEach$message(list, agentSel);
6 y+ w" i, @6 d                        actionGroup.createActionTo$message(this, swarmSel);- c: Y! O6 e8 Q( O9 e
                        schedule.at$createAction(0, actionGroup);
% v: `" ~- @/ i4 H                        schedule.at$createAction(1, actionGroup);
+ N0 P' P+ T9 F8 z5 @% h                        schedule.at$createAction(2, actionGroup);
- V  Z- h$ q" V2 O0 Q$ K% T+ V3 R- p- i! M
                } catch (Exception e) {
" u8 [8 E1 V, [/ u% T                        e.printStackTrace(System.err);. [% g1 ^, m* n
                        //System.out.println(e);
7 }; W+ _5 r/ z7 g                        System.exit(1);0 G' q( E+ x! f, F  Z& O( M
                }0 k/ g- ~1 B( `! y

5 T" C/ M0 V6 D1 V7 }2 O9 f
. ]( n- F6 h( ]        }
2 k8 Q0 S9 E0 \0 N
$ u8 ~0 F( r% u, h7 s        private void swarmSetp() {
, `: ?6 F+ \% a, Y, `                list.addLast(new Agent(Id));
5 |% {+ Z8 D& b5 `1 d7 M                Id++;% N& _5 _5 G# N, K
        }
% r# a% j# X5 y' n! v: v1 \
. N2 a$ ~+ z) j% L        public Activity activateIn(Swarm context) {* m2 U0 O, c0 c. e- l
                super.activateIn(context);
1 U* J; W0 w% l3 E/ ]( |# Y                schedule.activateIn(this);& O" D3 \4 C3 t4 g+ S
                return getActivity();
2 z( P. x/ i6 t6 ?        }
& S, C) b! g& W9 @% X; ~* k! {. k" s* L5 D' W6 U9 r  ~8 z
        public static void main(String[] args) {
3 V& R8 d" k  h5 X5 R+ u4 ~6 p- t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 k" f2 V. W7 B, c0 P8 d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 r  n2 d& {$ v                swarms.buildObjects();. |2 B) B: w7 ]' p" b
                swarms.buildActions();
' D! J! |4 i+ A* e, K0 D                swarms.activateIn(null).run();
. I: I+ K: |9 ?1 s3 m; r        }
% ^& ?# s* @$ N: x
0 T  Z5 b  E- Z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-1 13:45 , Processed in 0.016391 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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