设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10824|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 I; [. M/ K3 s3 u0 T0 o8 b( h0 H! }1 p5 d: p. c" O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 T5 e  o, z8 M+ Z& v/ L# ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 Y5 W7 k* i7 h2 e) r* h7 V5 ~swarm.SignatureNotFoundException2 X- F; b+ e' W% K6 L* a- s8 x  ]1 V
        at swarm.Selector.<init>(Selector.java:76)  T5 g; h, `3 ]1 Y* V7 d; j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); F7 E# D+ Z  |" V: _8 x6 y% T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# p. r1 F( R5 I+ A" b! ]& A
7 A3 h! I( w( x" B9 E. H7 f
! q8 r* L4 C/ r7 @0 L" {/ Jimport swarm.objectbase.SwarmImpl;
: L; Q- H$ l' k: G9 R6 F7 |! himport swarm.objectbase.Swarm;6 d; ?+ Y7 {+ [5 N+ c9 U$ B
import swarm.activity.ScheduleImpl;. C% H+ m3 A! n2 k7 a
import swarm.activity.Activity;
# }9 p# k( ]2 I" Fimport swarm.activity.ActionGroupImpl;, J1 H" ]) d8 t# q* H. u
import swarm.collections.ListImpl;
( y5 o, m5 ]: ~import swarm.defobj.Zone;
, ~# J+ h( g  Yimport swarm.Globals;
; @0 ]5 p+ P9 d/ zimport swarm.Selector;
: ~7 {. E  @+ w3 ]1 vimport swarm.activity.ActionGroup;
1 {8 M9 z6 Q% p4 f8 P0 Uclass Agent {& a  V3 U# l7 z+ \2 k/ e
        char id;+ ]- F3 F5 U8 F! B

$ W; M/ F/ ^, t* a# q        Agent(char id) {
+ L& q: N) y7 K                this.id = id;
9 o6 v% V0 x7 m0 {5 ]" D& |        }, c3 G! p6 I: I$ I. P3 a* A* F/ }
4 _% v1 G/ \9 {: J5 x( v
        public void agentStep() {
$ _5 l: C8 _  a  Z# }7 x# s                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ U- O- q3 O: Z0 m' @7 U        }  ^9 V; M2 p  Q$ m5 g2 S# o
}
6 `: U% s+ n  s- r9 R& R( E2 |+ Z! V3 v" V" x) `5 m' X3 i/ z
public class ActionGroupDemo extends SwarmImpl {! F7 t  G+ ]" u: k
        ScheduleImpl schedule;
2 \6 j" ^/ i+ d- D# I) i        ActionGroupImpl actionGroup;1 k8 [" h8 k: {
        ListImpl list;- _: h" ]- D$ Y2 \
        char Id = 'a';
6 R4 i) d4 X& f$ C
5 c( Z* A/ ?0 N* S% j9 Z  ]        ActionGroupDemo(Zone aZone) {5 m9 \% F5 [, O' {8 v# o
                super(aZone);8 w* Z+ L$ E  e' }: z
                list = new ListImpl(aZone);
% f4 w$ B2 t1 ~9 N8 H                swarmSetp();
  V0 B' U; T0 W3 d# ~( h+ Z                actionGroup = new ActionGroupImpl(aZone);
3 V* E: w6 _4 U1 d  M0 t: x" r% k  Q                schedule = new ScheduleImpl(aZone);; V3 l$ C. s; f) n, }
                try {
! _7 g1 z; Z9 l3 b1 j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 w: g/ D  v4 }2 L# l- {3 W$ F& c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) q; ]) Q* {% [/ u2 G' I& A& o                        
8 x7 F8 U# E4 X0 N4 Z                        actionGroup.createActionForEach$message(list, agentSel);0 s; y" i. H8 n/ T& m& k
                        actionGroup.createActionTo$message(this, swarmSel);
8 _$ @) C* [1 i4 w! T  L                        schedule.at$createAction(0, actionGroup);
/ d4 W7 P  d4 j                        schedule.at$createAction(1, actionGroup);
& z) `; U4 w+ N$ A                        schedule.at$createAction(2, actionGroup);
6 c5 Q( b( \* g
" h. }/ y$ V  [                } catch (Exception e) {
6 g5 e" }# d2 y                        e.printStackTrace(System.err);
; b9 \8 v* M: t" U                        //System.out.println(e);* m3 c! ^4 N7 [3 x
                        System.exit(1);% j  S" g! ], g" V
                }. |* X) r0 }6 i' F, L
2 w% ?% C. U8 I- U

: w% X/ G, l+ t, r  g        }
' J: Z% V5 }/ m. ^; A* p+ X+ g2 r& B& X7 i4 |3 g
        private void swarmSetp() {. T- ^0 O: r# r
                list.addLast(new Agent(Id));/ b( `9 t$ K  }6 ]! T" f7 L+ A$ `
                Id++;) I5 X9 A/ Y. A# q
        }
% y% J  F  n3 B$ g% O( t0 K$ g9 p& n" W% {; I8 j3 E% \& F' \1 Q
        public Activity activateIn(Swarm context) {' e; X  ]* c6 h& |, v6 N
                super.activateIn(context);
, D  _+ K" T7 I                schedule.activateIn(this);$ K7 U. \4 X( }  q3 A5 ]* J) @* m' n
                return getActivity();
: y1 u/ o6 G1 c3 }$ ?9 J        }  l4 l8 I* g5 ^
2 P4 P* r. a- k7 P8 `; O$ a" `# N9 b# y* N
        public static void main(String[] args) {& p7 ^2 `5 F" S0 a) E/ M2 x
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# v! J4 B% P% s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  \' z5 N+ G" H( |- f+ b* v2 M! }                swarms.buildObjects();
: F' U3 k3 |+ G                swarms.buildActions();8 S2 n/ ]) ^. s* W& a8 I/ q% Q. n
                swarms.activateIn(null).run();
  `3 @2 L+ u  W9 P; j: E6 C( Z        }
& Q1 ^5 ]# V4 ^6 H0 G: D/ E% d: U' k0 _+ `1 m* f7 ?" i" k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-24 21:46 , Processed in 0.018674 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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