设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10981|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 ]' S$ Z' h/ N: K5 X
5 h" v% u2 c, V- y; L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- u8 \4 q) c" c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 d( B) w- E0 J* k5 ?  c
swarm.SignatureNotFoundException, Z7 j4 p2 |5 W8 |4 L$ o, x
        at swarm.Selector.<init>(Selector.java:76), K0 `* D) {% T8 w: ]& N. h* ^  |+ Z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; v# T# [. ~' r0 K( v0 o        at ActionGroupDemo.main(ActionGroupDemo.java:67); Q. `8 X' D9 D0 C1 o4 `; L
. s1 k+ S, i( m' |2 N, o

0 v( U, q5 V9 ^5 W/ p# [7 yimport swarm.objectbase.SwarmImpl;
# h+ u& \# T% X8 E3 K; fimport swarm.objectbase.Swarm;6 P- Q$ ]( k) \, t0 ^1 O8 I  y
import swarm.activity.ScheduleImpl;
3 i; d3 r/ T: d5 r! b' B, Aimport swarm.activity.Activity;
6 H  E+ p' T9 a, n: Vimport swarm.activity.ActionGroupImpl;
7 m. p1 d$ y3 E* U+ [import swarm.collections.ListImpl;( |8 d+ `" @' e: d: ^  {
import swarm.defobj.Zone;
3 @& f6 ^' x& h$ Limport swarm.Globals;6 y' a3 A, Q. N8 k
import swarm.Selector;
, t4 `  Q) F* w9 p' c9 u8 _2 Vimport swarm.activity.ActionGroup;
9 F7 V# y% M+ V. O9 Aclass Agent {; x5 I% V0 _8 l6 `, a& K- m6 l
        char id;; x# f: x% j* d, s0 B

' n+ M8 |3 x* o- P7 K: K" V        Agent(char id) {
* D0 s3 t8 x' _7 a; X                this.id = id;  O, E- w; w% x+ ]0 g1 i0 i' ^
        }
7 z' _; r. y; B. R. W3 G, U! f  _
        public void agentStep() {
% ~; u* O% o5 |. ^  @0 Z! v: p                System.out.println(id + ":" + Globals.env.getCurrentTime());
; L( i" e* P8 i5 k        }
3 T7 g  h8 F2 S$ k+ g, B. Y}
; z2 d$ q. {; ]$ k  b3 g
, o3 }7 u  D3 \public class ActionGroupDemo extends SwarmImpl {: ]/ P8 z: L& N4 w' H# `) q
        ScheduleImpl schedule;( n( C$ b4 y6 c0 g2 k; L
        ActionGroupImpl actionGroup;
* M8 L  ^& s. j# e0 }8 a' Z  Q  ?        ListImpl list;2 A. D! \7 p% g* U0 J
        char Id = 'a';& h" }5 U" a1 Q3 \0 B, U6 F

' P2 h( [0 q* `4 i( d6 Z: m; w        ActionGroupDemo(Zone aZone) {2 J1 ?- W* Y( h  d9 ~7 p
                super(aZone);
8 x+ T: Z5 B5 W0 l/ A                list = new ListImpl(aZone);: V% V# v! }( V9 \+ B8 j% y
                swarmSetp();) {. f) t6 ^* D( r
                actionGroup = new ActionGroupImpl(aZone);6 [  W6 d" d/ ~
                schedule = new ScheduleImpl(aZone);
5 p( ^0 Y* y/ q% R, z7 W                try {
4 }/ g- Z% A, h. H/ f. H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- g7 X- ^9 h7 {" G0 \& ~+ ]                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" d! ~8 h( D: m) H1 J                        ) ~' {+ E1 y* ~) J0 Q
                        actionGroup.createActionForEach$message(list, agentSel);6 J  {- V3 e1 U9 Q, S4 G
                        actionGroup.createActionTo$message(this, swarmSel);) H$ ~9 {) l" B3 @% n$ t
                        schedule.at$createAction(0, actionGroup);8 S# E/ f; V9 R  t1 ?+ a% [5 v
                        schedule.at$createAction(1, actionGroup);
" f2 \3 ^/ F. O! c. s$ w5 @                        schedule.at$createAction(2, actionGroup);
4 h- v! s# i! Y4 G
; C1 G" g' c/ C$ J) Z                } catch (Exception e) {* {5 i( ~/ w4 N# E8 B/ X
                        e.printStackTrace(System.err);9 w" M* R; e; M
                        //System.out.println(e);( E7 U( V6 j" c8 O% d) r
                        System.exit(1);
+ l8 g5 V/ @( N+ v5 Q  f                }
/ p+ g& ^. C% O" v. W% d; b6 R
% }# ?9 G4 q! J& F
. U0 L  D3 c, P6 v! t- x        }) i& W2 L" p6 o; M3 o7 R

1 {0 O  P7 u% {4 u        private void swarmSetp() {  o' Q* `4 m0 J6 [) ~3 V
                list.addLast(new Agent(Id));/ R( y1 _9 `/ C% ?( Q& o
                Id++;: A) o: A7 s* ~6 m% @) Q
        }
+ i& b, \) _$ f$ T, w& I/ M4 `0 D' v0 {* h6 R
        public Activity activateIn(Swarm context) {
. n- o9 i- S) ~" M$ a* G                super.activateIn(context);
. b% \  I+ X$ V6 P# L                schedule.activateIn(this);
! F/ t( f0 q9 \: o1 [, O; C7 B, R                return getActivity();) S6 f: s" O0 m8 I8 q
        }
: [$ f1 J) B1 m, e# C  B/ T% i/ h: h" b- k  T5 U: G9 q
        public static void main(String[] args) {
3 s/ A. F( |  }7 a; R- E$ e7 A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ?0 e; V5 v- H1 g3 ], x8 c* O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' A  s1 a* W& D/ b                swarms.buildObjects();- H2 q' B/ W9 O$ r, V' h- y4 u' S  o
                swarms.buildActions();9 i, K1 t) b7 j6 [, f" F
                swarms.activateIn(null).run();" N% o6 k$ k& @1 M
        }
- ]( j0 V- o: Y# `0 J
" _9 x3 I7 X; M0 u4 c+ q% ?}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 10:34 , Processed in 0.014025 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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