设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12762|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; `' a2 e% @3 m/ g( d0 _! f
( J; n( I' d) I/ R3 ^% S; E1 A* d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" d  Q' Q9 H/ V, m0 W) u8 B* l/ k4 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- i; O8 U, M( K" j9 b
swarm.SignatureNotFoundException* j/ R; n' p; v/ h& X4 P' J0 A0 r1 V- o
        at swarm.Selector.<init>(Selector.java:76)7 ^5 V" {  m: f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 c9 T$ N; ]1 A* q2 Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) y# |  {+ r8 d8 N6 H- C* `( V
) m: u6 t' x% c+ G, P  q! t3 R6 S! E0 p9 O) Z$ k; b8 {2 x
import swarm.objectbase.SwarmImpl;& V3 s0 V9 L& ^2 U1 _
import swarm.objectbase.Swarm;
# @: X6 `' |6 \9 j4 D* b' M, b5 \3 ximport swarm.activity.ScheduleImpl;
; U: P5 v* h0 L9 ]import swarm.activity.Activity;
' a) a3 `# S& {6 `. n  H8 kimport swarm.activity.ActionGroupImpl;# r8 L. N' r' b: I+ I
import swarm.collections.ListImpl;
6 M5 E, h9 t! S- K' T* d8 Yimport swarm.defobj.Zone; + V7 O: L, I: Z# c
import swarm.Globals;7 {, Q8 F" E& Y+ H
import swarm.Selector;
. C% F" x6 _/ j, Qimport swarm.activity.ActionGroup; * ?) u" h1 s! K! }+ q: ~
class Agent {
: J9 U1 f6 z) F5 [  g        char id;1 }" k+ Z9 ?" b' p( F. Y% ^
. ~0 s5 J, ^' u) G) j2 D
        Agent(char id) {$ s  ^7 i) h$ |7 |
                this.id = id;
' ~( {6 u6 D  {% q: L# H3 x" o        }
) w/ }+ d% r* [* T* T5 i$ J; {. N  S3 a- u! w
        public void agentStep() {8 N1 T1 R/ l4 r3 B1 W
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 r! O' u% d3 Y+ i. @) F        }" d% w2 l" G3 M, h0 L2 `
}
% O$ K1 C6 @# U( ^5 O1 B
' P  Z0 X! D" M( b& [- |public class ActionGroupDemo extends SwarmImpl {6 G, @6 E8 i5 C6 k
        ScheduleImpl schedule;
  h0 V3 `  A1 D$ A        ActionGroupImpl actionGroup;
% `: g8 i5 F& P8 j+ `        ListImpl list;
3 [/ ]# X8 I' t& |2 S        char Id = 'a';* w7 B1 u) N0 V/ F4 c( j7 ~
5 G. l8 v& K" I% l. L. {
        ActionGroupDemo(Zone aZone) {' }- v( J5 \# t8 ?' r& S' P
                super(aZone);9 Z- {( ]% y1 G
                list = new ListImpl(aZone);
7 `" ?" M# `9 K7 T4 k6 g& D                swarmSetp();
' U, o# S- g) T4 M                actionGroup = new ActionGroupImpl(aZone);& T6 h% h3 a' ^- @3 v  ?7 S& m
                schedule = new ScheduleImpl(aZone);! C. p' L! R; I
                try {  ?' R' s$ G; ^3 E+ e
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! m# V) g5 t6 j* H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! }8 g1 K7 F1 ?- F! V: E                        
' z: F$ M6 W0 i6 j3 y                        actionGroup.createActionForEach$message(list, agentSel);/ H( ]3 b( U. u' t( l- X9 s
                        actionGroup.createActionTo$message(this, swarmSel);
; ~/ e, f0 A, H& `: C8 U7 {                        schedule.at$createAction(0, actionGroup);
+ M7 G5 \# V- d6 k' d  Y4 e                        schedule.at$createAction(1, actionGroup);+ M5 s2 ?/ o+ q, v8 F6 M" x$ u
                        schedule.at$createAction(2, actionGroup);
& C2 ?8 i  T8 ?/ `/ A5 h3 K4 b9 e+ P
( _- N5 q& X7 J, g# b4 P# \                } catch (Exception e) {: p- e# C' h3 o
                        e.printStackTrace(System.err);
4 ]6 \& V9 k5 [                        //System.out.println(e);
7 A% S6 ?# z- D7 `                        System.exit(1);) V8 P5 J* p, X9 H. I+ W
                }
0 p0 ^; p. ~+ D& c) h9 G$ c) f/ `3 h
6 P+ o, _6 h6 u, x' V* ]' n8 n3 L& }
        }
6 C1 y# V/ R; c! {: \9 r7 S) C4 x, z: P  q1 U; \+ z- P1 m
        private void swarmSetp() {; S8 O# o6 ]# s9 C
                list.addLast(new Agent(Id));  I6 @7 A9 W0 f( `7 Y! {2 s
                Id++;) Y3 X1 a- m. ?3 Q
        }
0 O5 [, R7 o7 j8 w8 w  D. P' Y1 T  x3 I' m$ Z/ h- d  _
        public Activity activateIn(Swarm context) {
' ~5 g' ]' d7 y$ j* h                super.activateIn(context);- O4 r1 u% c" b8 K
                schedule.activateIn(this);3 S% a1 x) i. b
                return getActivity();
! S3 @/ C8 N* q. l3 f        }
6 A- z% N6 c0 P& H( G/ u" q) O3 U# z! t( z+ n' d3 r# t
        public static void main(String[] args) {0 E$ x" I& |5 r: e9 y7 ]7 U7 p
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 H( Z! U- b! k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# c; ]9 C" q# q# ^2 @3 z
                swarms.buildObjects();4 k& h3 U6 W$ c! ^* m' Z
                swarms.buildActions();
- W: C( M; d" H  }4 T: D                swarms.activateIn(null).run();
6 w3 B" R! J' [8 v. o+ V, K; C; q5 T        }
9 I9 Q+ c8 m/ \* p. f, m9 M" G# J$ y9 {) P
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-19 01:47 , Processed in 0.019386 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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