设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13672|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : y" x* @# ?: I* V" {8 w

$ K4 a$ [; y# H! V4 n( t/ ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" \( {, p. `: L9 U1 j( \) E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& k! G) z$ M/ t. K
swarm.SignatureNotFoundException) o8 r( ~) P+ j4 C. d
        at swarm.Selector.<init>(Selector.java:76)
7 b) D* x' ~0 V# B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 I4 j5 @! u* R6 E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)& F8 r8 Y; C' }5 D# ?( Q

" Z2 H: }3 f2 D' g' ]! e* w- V" R. @# S. ]
import swarm.objectbase.SwarmImpl;+ j- q7 @) c3 d0 n* {! F3 Z; D4 x, k
import swarm.objectbase.Swarm;
$ m6 l3 w0 @, a- P) F5 Wimport swarm.activity.ScheduleImpl;
  [+ {, t+ u+ yimport swarm.activity.Activity;1 C5 ]& X( E5 K7 n. U9 n8 K
import swarm.activity.ActionGroupImpl;
9 g, b6 P# i; timport swarm.collections.ListImpl;
3 \2 T" M0 h7 {# T4 bimport swarm.defobj.Zone; 6 ~1 t% A" J! }8 \
import swarm.Globals;
& y9 q, m6 w: N7 h) o7 D3 gimport swarm.Selector;5 F, N5 K1 F) x  Q' \
import swarm.activity.ActionGroup;
' |: v# q' u$ N# W- f& qclass Agent {7 X# X% b2 q1 i8 s6 d
        char id;1 b( p6 Q8 v9 J# J

" G- `: p1 h# T$ s) o$ y4 C        Agent(char id) {+ k# v1 g% V0 k8 O: r% b& |+ j
                this.id = id;
( Z$ F9 x) A% \! F9 f6 G        }( m7 [5 s6 g' u* H) M+ O: Q  R

3 q- I- G: J0 z" D        public void agentStep() {
1 S, Z1 d& b, e. [# c                System.out.println(id + ":" + Globals.env.getCurrentTime());
# v. D7 [# y/ p        }! J, t. Y. ]+ j0 ^: o7 y, T, y
}
* a  Y8 K& |: A8 H4 ^) }) X7 a& f% L1 V/ z
public class ActionGroupDemo extends SwarmImpl {' e8 W. S9 F" u! f8 |# Y
        ScheduleImpl schedule;
" b  o& @6 p  x1 k3 y% S        ActionGroupImpl actionGroup;, C* l2 X& O6 |- u
        ListImpl list;
: a  d9 ~9 d% r  k9 _        char Id = 'a';
( a7 E* y( _0 D# x$ x; i
1 D, {+ F. y# F  h' l  {        ActionGroupDemo(Zone aZone) {2 k7 [3 D  {0 x# N0 {) }
                super(aZone);
( @0 u3 k* o9 X* t                list = new ListImpl(aZone);
1 @5 x9 O: B# M6 W                swarmSetp();- w) R4 Z. m3 C& `3 K
                actionGroup = new ActionGroupImpl(aZone);
/ Y/ n" U7 }+ t' Q% w                schedule = new ScheduleImpl(aZone);
; ?) \& h  p6 u& C                try {9 T, u! }0 L# ^  R- \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& C7 ]5 \/ M* t( e: t4 H$ N                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( ~# F" k2 W0 @, q                        
, W# _2 j( k* y! ^( s$ n                        actionGroup.createActionForEach$message(list, agentSel);
2 }7 s/ ]/ ~& Z/ u7 ~% e                        actionGroup.createActionTo$message(this, swarmSel);& x7 M* a2 `1 e- r; [' Z
                        schedule.at$createAction(0, actionGroup);
. Q& ^( u8 }' D9 a                        schedule.at$createAction(1, actionGroup);
6 l1 x% g5 k  |" T6 `                        schedule.at$createAction(2, actionGroup);
+ Y$ w$ J" n* z
! Y; {2 Y( Z! P4 c7 N- i/ b                } catch (Exception e) {
2 X' n( G: x' l7 f                        e.printStackTrace(System.err);
1 v% D4 t0 T! j) H/ R- c                        //System.out.println(e);* \( r' |- q$ U& \; K  C/ @- ^
                        System.exit(1);
  t/ K/ t$ W2 d: B* N, I' B                }
7 z  }1 ]5 M4 k+ y& J% O
: x4 A, v3 K4 z+ y/ \6 k3 A
# c. W% a0 w4 i4 ~8 R* s+ N        }: {8 e1 k- t& Z: F; B, I. w( T0 f2 {

8 E! f6 x! q8 y( a        private void swarmSetp() {
# G; k7 A9 L$ E, H+ w  g                list.addLast(new Agent(Id));1 G% V% m# K7 }! `
                Id++;
0 F% W0 x4 c( n" J        }
$ Y: e4 F8 G  @7 Q" I
0 L. v7 j6 Y0 H2 ^- w! x4 n        public Activity activateIn(Swarm context) {" G# E: Z1 O7 c  R% z) o
                super.activateIn(context);
- g: t# m5 k( N* ?                schedule.activateIn(this);
# u4 I* X  l* ^6 z4 @                return getActivity();
6 u! ~  c% F- e* M9 _        }
& W+ I0 E% f; H1 \8 n
- Q$ Z- C: }4 R0 ?1 U- l: i5 A# z        public static void main(String[] args) {9 Z+ i0 G! _4 O- S) N1 y# S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 ?% o" c* U" U- G$ [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 o. q9 ]* e- m6 Z; e+ W! w
                swarms.buildObjects();
( p0 U" c- H! `/ v9 t* @  F: \# E                swarms.buildActions();/ G! F* _1 P8 q# j" P
                swarms.activateIn(null).run();" E' n+ t' ?# S3 s8 W1 j4 I& e
        }
# _: w1 @1 g3 Q9 l9 ~0 f3 |7 ]/ K4 \' k9 q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-14 08:07 , Processed in 0.015865 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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