设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6118|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 V" c: q4 f" M' W3 j6 A) O! W4 [7 K. z/ g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: |) Z" I4 g9 l$ j1 K& R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 i* }9 L+ j$ z: g
swarm.SignatureNotFoundException' i3 G- Y1 S7 J1 e
        at swarm.Selector.<init>(Selector.java:76)
' ?) o$ D; [( p3 \2 {# I& R        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# I5 i5 P# \" ^9 s/ x        at ActionGroupDemo.main(ActionGroupDemo.java:67)( h) [6 n4 R7 }3 X* M/ T. p3 e
: k/ C) `: d) k
: p$ z* n* Y* V; R: W9 Z0 v# }. K
import swarm.objectbase.SwarmImpl;: S* {$ q0 w9 g
import swarm.objectbase.Swarm;
% b( @; X* n' `/ m/ ximport swarm.activity.ScheduleImpl;
9 I: T# y0 v2 r9 [& u% Zimport swarm.activity.Activity;; s: g8 O. p% a" l5 F
import swarm.activity.ActionGroupImpl;
3 q" R' |0 M6 s; \0 Iimport swarm.collections.ListImpl;7 j; \% J: W/ \
import swarm.defobj.Zone; 2 O- s% X8 a  w3 o$ B+ ~1 }( k
import swarm.Globals;) B* Y* i& e& n. S* [
import swarm.Selector;
7 b' ]6 e. E* eimport swarm.activity.ActionGroup;
3 ~2 |2 `7 t+ K4 j/ P- p+ \- Y. `8 bclass Agent {( \9 h/ w+ @+ s2 g# @
        char id;
0 M( l) w" e9 W$ g1 Z  G$ h& S6 O. m0 M
        Agent(char id) {
# k/ r8 L9 n$ H4 w/ D% r                this.id = id;
/ V4 G. g4 |/ ]: B+ @        }
: G0 S4 W2 T& ~6 w; L
& _" d& H, D3 G6 |( S0 O' C        public void agentStep() {
: x( a% c2 O, T, ^. R8 Z# u                System.out.println(id + ":" + Globals.env.getCurrentTime());3 X. s7 r5 g, m. O2 b, U3 P% a8 ]6 ~
        }* h: S1 n5 y8 o
}( w) W, B$ v8 H( P4 S
* G! m- r# D/ W8 ]( y. n
public class ActionGroupDemo extends SwarmImpl {0 b4 i. D* [2 l2 V& ]
        ScheduleImpl schedule;
# c, I: m+ ^& h8 P- m# d3 G        ActionGroupImpl actionGroup;' ~3 z, D! p# Q9 `8 C9 ?
        ListImpl list;
/ ?' ~2 C1 z+ `# n. c% a        char Id = 'a';2 g# w  B: _4 C7 G

2 q% `( O* _' m+ l        ActionGroupDemo(Zone aZone) {
8 b5 F  |0 `$ j4 J& S' H$ ~) `                super(aZone);; Y* D1 y5 k- ?9 D$ R' w
                list = new ListImpl(aZone);2 G/ j& C/ {  d1 c+ T/ x2 N, ]
                swarmSetp();
; X8 |2 s$ G" w( e  E9 ?                actionGroup = new ActionGroupImpl(aZone);# Y1 O$ a0 e) @: `. e; a& v
                schedule = new ScheduleImpl(aZone);
  o5 ^' r' Z+ H4 j9 l7 z1 L                try {
; J6 K: N, D, K+ F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" r1 }8 S  ^7 ~9 V7 V1 _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& G. q5 T; i+ h+ F5 M1 J                        # s' H6 J' M0 J! K1 J
                        actionGroup.createActionForEach$message(list, agentSel);
0 H- t  h6 ~6 `9 r                        actionGroup.createActionTo$message(this, swarmSel);. o+ X" D0 T5 w" z5 p
                        schedule.at$createAction(0, actionGroup);$ o( ^& q+ F. ]
                        schedule.at$createAction(1, actionGroup);
9 k' Q" [0 e: T5 D* V* {4 j: Z( D                        schedule.at$createAction(2, actionGroup);
5 l( R# _! u6 e% t, x0 ?
! T  z; h# @0 O                } catch (Exception e) {
5 k( \8 ~/ z' D" k9 e  [5 `                        e.printStackTrace(System.err);5 v6 a; s6 h1 V5 f) ?
                        //System.out.println(e);1 r1 ~5 A! m  a( @5 J
                        System.exit(1);; K# _8 N2 a8 `* V# u0 h- r8 i9 N
                }* A& K1 G) u- s2 p! p6 z
& f1 d! t% z) P) _  c
! u' a9 ]6 {5 a4 ~5 @/ q4 G
        }' W( z3 o' A" T$ w9 G& E8 f/ ]: D
5 I  _/ P0 |9 F' \: [! s! \5 ]
        private void swarmSetp() {
" W  E2 Y4 S& d7 a                list.addLast(new Agent(Id));
( T( F- K- }" B% Q/ N. i7 w9 C                Id++;6 ?: S- L4 x0 t0 g  G; p8 h7 U
        }6 N: K% N0 t7 s1 G# G, ]8 I

- L1 Q9 Y9 ^9 V8 K9 J        public Activity activateIn(Swarm context) {4 i2 `1 _$ h- q
                super.activateIn(context);
( c# b8 }. ~3 L" Z/ l                schedule.activateIn(this);
! \' E: H; H0 p: w: l7 A                return getActivity();
- b9 _1 \" T9 ~+ z        }& ~3 T2 f9 Z! s1 ]/ s2 K( J. v$ ^

; L! s! X3 E: j% O5 Q$ f- r        public static void main(String[] args) {
" f0 Z% w- a6 K; p0 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 ?3 U: e5 p& @) A9 e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" f8 ^- ?1 Q- i- m: s
                swarms.buildObjects();2 j, p1 p0 F0 n5 Z4 \4 T* I! Y
                swarms.buildActions();
  s- V' o0 X7 W0 A& G: w                swarms.activateIn(null).run();- F0 v  p7 T* N3 c% H4 r
        }
: k/ R6 H/ l8 q  l  Q1 _7 s" }  c/ Z8 c- F/ S' |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-18 09:20 , Processed in 0.018457 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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