设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8429|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 l& o+ R! o" U$ g4 Q% I) P
1 r; E" q7 f: c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& T3 a$ `' n* Y; Y: `6 a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# K& R, A8 _- f0 O8 K& ]) ]. @
swarm.SignatureNotFoundException1 v! F5 a( q2 e8 }( C8 @
        at swarm.Selector.<init>(Selector.java:76)
# G9 ]% L/ z& J) c: b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& l, ]. D* O" y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ L" M3 L) s2 N5 q8 p% u; A6 x
4 z1 r1 a1 n  |  [6 h- n& s2 F& C' i! J' ?. G
import swarm.objectbase.SwarmImpl;
; U, o. f4 Z3 W- S* B& Bimport swarm.objectbase.Swarm;: ^6 Y+ z) {! w, e, N. F* \
import swarm.activity.ScheduleImpl;
2 D3 I0 x. @' L- }. P9 K' b) Ximport swarm.activity.Activity;6 b: e8 B5 V! r9 m+ M  ]
import swarm.activity.ActionGroupImpl;
4 ^3 e5 `- ]- W- x  Himport swarm.collections.ListImpl;+ O& F3 ?' r) S% {* `9 o
import swarm.defobj.Zone; ( ?5 ^% L8 O& j$ t
import swarm.Globals;
; l- A- U* A' ]9 ^: H# b; E% Dimport swarm.Selector;' U3 d- C8 z  J& N/ i2 z# |
import swarm.activity.ActionGroup;
$ J8 Q3 |( u/ r3 L0 nclass Agent {5 g" k$ V( I3 [& \; R& t. b
        char id;
+ {6 b5 o9 H2 s$ [; d% Q% {
2 n  P& b& t$ M) t2 o: q$ O3 W, v        Agent(char id) {
) c: j4 ]6 ]* [$ G( p                this.id = id;# L( f' F& ?. ?! L/ S6 J" R4 d3 Y
        }
" Z+ |5 |$ E* S! o, ]$ X( A
6 S) W' z9 Y! ^: ^        public void agentStep() {
; H( t* r. Y! {" C' Z                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 y  ~% q3 B" O2 F* j6 r' i        }' Y+ }% j, ]/ r, F+ w
}
! U/ v% S8 k$ [1 b4 y: T% j% L$ t( W- l& @0 [# ?" q6 i
public class ActionGroupDemo extends SwarmImpl {
) @& i0 w; p& Q( B! @, z3 P        ScheduleImpl schedule;% p" z& _9 V( K+ C3 r
        ActionGroupImpl actionGroup;
  G8 f2 {. k! b        ListImpl list;
+ S1 H- D) W$ n' t$ W/ k        char Id = 'a';, I/ W- w. N- X# _9 U( q

7 h$ p! W9 p# I# j  h        ActionGroupDemo(Zone aZone) {
0 n2 K5 q7 C2 M2 V2 ]                super(aZone);
+ Q9 T5 `+ M/ P                list = new ListImpl(aZone);
5 ]7 o0 ^/ q5 s7 Z                swarmSetp();3 b4 |4 r! D; p
                actionGroup = new ActionGroupImpl(aZone);9 e& j4 ]7 I5 f& ^2 U
                schedule = new ScheduleImpl(aZone);
+ x% |' T0 N. u8 q                try {4 g' Q& n2 i# ?3 O7 b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 v$ d7 b) i% Y- K. {0 T$ x: y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, B5 D' i( Z/ U# B! S0 K& T                        
. s" @, B7 n* z% `0 B- L                        actionGroup.createActionForEach$message(list, agentSel);& r/ b# N; M+ {, s' m! D
                        actionGroup.createActionTo$message(this, swarmSel);
' ~$ U, D& p  B6 ]( K, o3 M% [  G                        schedule.at$createAction(0, actionGroup);6 m! T( \2 q" E& W$ x7 |4 T5 a6 T
                        schedule.at$createAction(1, actionGroup);
& Y  _! n: `" V: }4 G3 y6 r+ ]' R                        schedule.at$createAction(2, actionGroup);, q5 J9 l+ C9 O
! d' a4 M9 f! ]
                } catch (Exception e) {) c. {7 h; f) I; {
                        e.printStackTrace(System.err);8 U" S2 ]9 `! [0 N. i' _
                        //System.out.println(e);
& {# f8 H% T3 V8 N/ K                        System.exit(1);
8 e, `% j* S! O& V0 ?                }
; {5 P  |' u) Y: A2 R" ?1 G
. q5 n& D8 l9 H8 I1 h9 q* E- |
        }7 B3 d! w$ }3 X0 X
3 b3 H3 u9 m! b+ o
        private void swarmSetp() {( I3 |0 l6 `0 L/ w7 y8 a6 U
                list.addLast(new Agent(Id));
0 c; F7 ~8 P. X- Y5 {                Id++;
& t: J' r! U3 K+ ~4 z5 u. T/ {        }5 j( ^2 W# `- I  {6 U, U' [' W

& A! Y% n" ?6 J( G4 P1 ~$ e& o        public Activity activateIn(Swarm context) {
& |3 J! O7 \: b6 \                super.activateIn(context);+ \8 n( r. i% Z) z
                schedule.activateIn(this);% f' {+ |8 i& R7 j
                return getActivity();8 S) U2 j, m. W0 ?6 t& v$ s
        }
  i! l- c6 s1 h! h7 S4 {# y# }0 {9 y: P& H7 d) T- R2 v6 ]4 b2 W
        public static void main(String[] args) {+ ]' R. V3 C5 y. {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 ~* X7 s; X! ]# L- `7 ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, ^  n9 J/ {3 i
                swarms.buildObjects();1 ^% i: i, s/ G# y/ J& m
                swarms.buildActions();
8 k1 h0 B- I+ u' r4 R/ U                swarms.activateIn(null).run();
, b% u5 c6 q+ \% M# B7 j        }
+ w' H& \! r2 D, p- a3 y  y  e6 t# @9 j; i2 k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-11 23:46 , Processed in 0.018963 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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