设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5601|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ?5 m7 t1 b3 d# R, Q3 Q8 d- @/ W7 d$ Q+ t$ D1 ^4 d0 j8 e" T/ }5 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 W0 k# W; t3 y7 j# a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% ?( m- r( t' o8 ~: N. ?6 Y8 Bswarm.SignatureNotFoundException. r1 P# H5 X" o4 a) ]
        at swarm.Selector.<init>(Selector.java:76)0 T1 b' D9 x1 x% o# ?# U1 `* l8 F
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" ^* s# X2 |; n& Z1 c        at ActionGroupDemo.main(ActionGroupDemo.java:67)# S% X8 T5 o' n/ U
! n; K5 t6 C, R+ e& v1 @

0 C9 t& g1 G  A4 @! f. u" yimport swarm.objectbase.SwarmImpl;
1 I' r6 _( n  D4 |/ q1 U. yimport swarm.objectbase.Swarm;
! _" o3 L" |& K1 I( eimport swarm.activity.ScheduleImpl;
0 \+ X3 V" g( Q# l8 b# U9 pimport swarm.activity.Activity;( n5 T5 r5 p7 w+ J( Q
import swarm.activity.ActionGroupImpl;
# i2 S& D" F0 @  a: W$ iimport swarm.collections.ListImpl;9 e2 e# {. z4 b: n% V+ z' D# b2 Q
import swarm.defobj.Zone; . U. g; C4 Y5 i! ?0 c7 B
import swarm.Globals;- _+ V4 z$ N- q
import swarm.Selector;( W4 e) T! L' ^7 p7 D  s
import swarm.activity.ActionGroup;
4 I' G. a5 o7 p3 rclass Agent {
  J0 v) w1 X0 b+ r3 b        char id;8 g' ?+ `' R5 l% K
" M* U& _% x0 _4 Z- A
        Agent(char id) {
5 ?) q' d4 @! c1 V5 g: N                this.id = id;1 ~( J5 P) W2 e
        }
* a/ ^8 }: c* G9 i9 I- \+ g( ]) ^! }" G
        public void agentStep() {
. Y. p; U) U3 Y; |$ X0 [                System.out.println(id + ":" + Globals.env.getCurrentTime());, K8 o$ m+ v/ @( D- N4 C
        }
' u# [7 M" k7 R}
# N3 g  a( D7 B; _( \' ^, X- `, U" X8 k: S; ]9 X
public class ActionGroupDemo extends SwarmImpl {& k- A+ Y' M3 l+ g
        ScheduleImpl schedule;
8 S& e/ H5 k4 \. f        ActionGroupImpl actionGroup;
& G) p; A0 _0 V# {: W        ListImpl list;; N' C) n2 I" W
        char Id = 'a';' K5 `+ a% d# _1 a* ~

' Q0 A. `4 L& d$ X        ActionGroupDemo(Zone aZone) {( R/ C* [% G; {4 n" t( E0 r
                super(aZone);
+ ^( C: H1 t" T; q7 H- Y                list = new ListImpl(aZone);& u0 a3 ~& ?+ j
                swarmSetp();0 |  V4 N4 T$ Y. S- r
                actionGroup = new ActionGroupImpl(aZone);
* W4 m6 V$ |; F+ G5 d3 I                schedule = new ScheduleImpl(aZone);8 h: ]/ Y. v6 h) E, B8 r4 g
                try {4 i' H$ Z3 K9 Y- H- H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 _* W8 `/ I$ i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 `4 Z0 o7 ~& C6 |8 g8 C                        
  f& L' ^0 ]1 f; ]6 [. z# r2 [* S! k                        actionGroup.createActionForEach$message(list, agentSel);
* a' b* X0 X# Z  c# D7 X% ^                        actionGroup.createActionTo$message(this, swarmSel);' \5 _8 }. b$ B0 ]$ F0 d+ n2 b
                        schedule.at$createAction(0, actionGroup);$ c! q8 a" F* }5 \0 p& P
                        schedule.at$createAction(1, actionGroup);
# h4 I* _7 A0 B; X# N& v+ E2 f  L! j                        schedule.at$createAction(2, actionGroup);7 B! N3 P1 b" a* k* I/ t6 J
' a1 K  t  f  W: Z5 ^: B! K
                } catch (Exception e) {" o: z1 F' h5 m2 K) _
                        e.printStackTrace(System.err);" }' Z! r+ g) w+ S) {! R0 L
                        //System.out.println(e);
+ ]5 k* Z8 F- V+ K                        System.exit(1);9 l/ K5 u( S: q* |
                }
7 D6 y5 b0 J! K3 e' F$ V/ x+ |
) E# ~8 ]% S, F: `7 t$ \: K! x) u. d$ h
        }
9 g0 e7 R  I) Q7 Z& u# a4 g" v2 {: [3 X6 u
        private void swarmSetp() {
' Z% x6 t! W3 ^/ i9 v  [  j                list.addLast(new Agent(Id));
% v, C1 V& z1 P- x                Id++;
9 p! b9 z1 d, u, w5 J        }
! I; S5 H$ {( }) a+ _2 k9 H$ @$ @2 G/ D; x, M3 E
        public Activity activateIn(Swarm context) {
# n3 O( c, r$ R, H- w' Q  b) s                super.activateIn(context);" k9 C3 d0 v: F3 H0 K: ^2 e
                schedule.activateIn(this);7 Y, w/ u6 \( Z
                return getActivity();
  y- h2 D2 \0 E8 J# v, [4 ~" Z/ c/ l        }
# U) |3 G7 z3 v8 n- M) W
( a) H6 f1 A9 D( |        public static void main(String[] args) {
9 \' t8 t/ m% r1 _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" V8 x/ v5 }; U1 N: }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ Y( {1 k0 u9 C( l
                swarms.buildObjects();1 S! K9 U% d2 |( i
                swarms.buildActions();
9 x9 B/ D; v5 ~+ R$ l& i( U6 C6 r                swarms.activateIn(null).run();0 n: p: |5 v+ {  D- ]8 P" `5 Y
        }0 B( u. I& H9 H% z
. E% H2 ]7 g) V6 ^# b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-15 02:19 , Processed in 0.025374 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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