设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13592|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, S" |9 P' F4 \) n
* T# O+ `8 |* l- b. c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 j" }4 Y+ ^: q; X( h# f+ O+ ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. p5 Q  {' |. J4 [; m0 @swarm.SignatureNotFoundException
1 ^( x: \6 w  f( l& C3 ~        at swarm.Selector.<init>(Selector.java:76)
3 G9 s1 S/ R% T; u/ {3 D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- O" U' @1 o( ^. k5 E* J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) H8 v, J$ w; S, l7 }( H: E) D/ K

  l$ q0 ?  y+ \$ H$ l/ ?
+ h3 F% M( p6 A& nimport swarm.objectbase.SwarmImpl;
8 q, X# ^+ w* P$ fimport swarm.objectbase.Swarm;3 S/ C8 o" v) ~% F& A0 R
import swarm.activity.ScheduleImpl;
% K# v1 r; W! X) g- k) @0 _- L' ]import swarm.activity.Activity;
0 l: [# b/ h1 k- n( a7 G8 zimport swarm.activity.ActionGroupImpl;
" p: @, S$ D& Aimport swarm.collections.ListImpl;
% k4 G) z9 i2 d4 ?% i0 pimport swarm.defobj.Zone; + F3 d) i0 H; B% y$ M
import swarm.Globals;
5 M- h  V' w! C% Wimport swarm.Selector;
* [" n6 L& J4 _import swarm.activity.ActionGroup; : @: w; O8 Z) V# r
class Agent {4 y6 \9 r& S/ {/ x4 y  M+ |
        char id;
" X0 F3 H; l+ s7 O% \' S2 ]! m$ ~* `% {+ c0 l/ d
        Agent(char id) {2 ^6 y+ G% h7 w4 `
                this.id = id;
1 o: V5 Z8 c& G7 D3 T        }0 E7 {4 P8 W6 ~+ ]$ A. t# s- q
/ d% v$ `. U" U- U
        public void agentStep() {
+ i9 i* z2 Y: _6 z0 j                System.out.println(id + ":" + Globals.env.getCurrentTime());9 ?% c5 h6 b. R2 C
        }+ W" W# X: w( ?# z
}
, _" P0 y1 T) M1 F6 T, p/ h* H$ U4 i, r
public class ActionGroupDemo extends SwarmImpl {" I* P1 A. S" G' a: A+ Q
        ScheduleImpl schedule;
6 C7 }4 [) k+ k' i$ c$ i- s        ActionGroupImpl actionGroup;
  q7 r3 L/ |0 ^: |3 c        ListImpl list;
$ D' t9 }- _6 C4 }* @7 x/ ]; }        char Id = 'a';
$ h% g+ t+ D9 K
; W/ `2 ^# B7 w  z0 D        ActionGroupDemo(Zone aZone) {1 d- U$ T& U9 u- b5 s5 q' z
                super(aZone);
) Z0 ]; v* q( _7 K) |                list = new ListImpl(aZone);
5 W4 e. Y# n- N* P$ c- i1 E                swarmSetp();% N; `) P0 _1 b8 n4 {" o
                actionGroup = new ActionGroupImpl(aZone);4 E  c  n6 s$ G+ P" T, [
                schedule = new ScheduleImpl(aZone);
) K9 Y5 Y" n* J                try {
" U/ J( o! V' b' D1 G, Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 w- Y# z* W1 f" b" a# O/ K' a% a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ Y0 @2 ?6 O3 m# o5 m0 k" f( [2 m
                        
4 U" r" \7 N1 k0 e, O( x3 Q# L                        actionGroup.createActionForEach$message(list, agentSel);( l1 v% p: ^  M
                        actionGroup.createActionTo$message(this, swarmSel);
/ z8 Y3 O. g/ P/ W" i                        schedule.at$createAction(0, actionGroup);7 h" C8 ~- j0 ^. i5 h
                        schedule.at$createAction(1, actionGroup);' ?* u0 O1 w7 P8 y
                        schedule.at$createAction(2, actionGroup);
- ?4 r& f/ q7 _9 c) _
! ]1 G1 y9 w& o# V- \/ K" K- E                } catch (Exception e) {- V, |, T* _7 d1 d% _6 i0 f' z# D
                        e.printStackTrace(System.err);8 u  R: X6 J, f) P5 A0 R& W* c! @
                        //System.out.println(e);
+ z, p# }6 Z3 E4 U, c4 d/ P( |) S0 c                        System.exit(1);! \) K' q% d  f5 y& W0 ~$ Q4 R3 H2 a
                }' I6 b2 T% M5 \5 D; E/ T; {) R
2 R5 ]) P5 a) A( y6 a3 C% M

! W' Z) O+ N  `1 R8 }0 y        }
8 J8 d1 L( V  [8 Q. [/ k  k+ g5 P2 B( h& H, [; v7 J: N
        private void swarmSetp() {
) J0 q! u/ P. J. T                list.addLast(new Agent(Id));
1 A0 ^2 x# L( ?; c" a                Id++;4 t6 Q8 n" M9 @
        }
  n2 G$ U" }9 `, C2 i2 P$ a
& S9 I3 A) @3 ?% `' h' T4 N        public Activity activateIn(Swarm context) {( U( c# Q2 c) @0 o/ m3 r
                super.activateIn(context);* r+ x* _& L7 q
                schedule.activateIn(this);
" O5 i2 V/ V6 O: _( v) H                return getActivity();/ p5 W4 [8 W* G; j4 {5 l
        }5 v! N9 I4 Z" W5 t

! P# t8 b+ x: N! c3 H& N- g        public static void main(String[] args) {9 ^/ i6 V1 H7 Y, V3 w% }5 t- b8 s) Y
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, A, l% J& v2 ]) r. H, M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* [3 j* ~! Q- }" U7 c3 R* e                swarms.buildObjects();
% P4 \  G# u3 i9 ?                swarms.buildActions();
' ]4 F; e9 {7 B0 o& K                swarms.activateIn(null).run();- z' Q$ T' M) G: |. u- Z
        }
" L7 V; O1 f7 b
6 u: V6 o+ x: r! ]}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-12 03:06 , Processed in 0.019032 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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