设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10864|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   b9 C1 `+ y; O7 J1 R$ O
  ~( i4 ^1 `* l2 q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ D3 K& g& _; D* F7 I9 p- [1 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% t2 `) |  R6 Rswarm.SignatureNotFoundException
2 q  ?( x; v5 n9 I3 H0 e7 Z        at swarm.Selector.<init>(Selector.java:76)
  m4 G0 n( W2 X2 S* D$ \! n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 a7 E2 ^5 z+ Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) x* t, A4 k9 l+ w" A' z3 o

! g6 {1 ~* r3 G5 a$ Z7 @  ~8 i( V. @
import swarm.objectbase.SwarmImpl;# t8 q( g6 f$ U" w
import swarm.objectbase.Swarm;
& R, [) b3 ]7 [* `import swarm.activity.ScheduleImpl;
* t3 ~/ g3 \) l1 himport swarm.activity.Activity;
! m+ d* r( k7 t  Dimport swarm.activity.ActionGroupImpl;/ }/ u+ X2 d8 f, j4 C
import swarm.collections.ListImpl;
+ U4 u" u/ q3 S% S' ]4 H7 j8 y% Zimport swarm.defobj.Zone;
6 y0 L% p/ j( C( Vimport swarm.Globals;9 Q" L: |' [: s( u; x; C
import swarm.Selector;
5 a+ F! ^" @  m' q# }7 N3 Z6 Y1 l/ Kimport swarm.activity.ActionGroup; ) w9 P- t: F: N6 ?; Y
class Agent {
8 U7 y3 Y; j2 T3 d        char id;* k# t- Y4 X7 R5 `; C
' i; L4 P2 Y' |
        Agent(char id) {: c' V+ `, h! R
                this.id = id;
* z+ r8 `7 {: B        }
- B. B4 ^1 w, X3 F1 s4 E9 ?; ^& u' Z' n' x( k# _
        public void agentStep() {
) g8 Q$ w5 U$ }                System.out.println(id + ":" + Globals.env.getCurrentTime());. \( R8 N. _/ N
        }. z" c* U8 @2 N! ^
}& _, K7 {4 T" ^: w$ p* z

! n, A  ^7 f1 bpublic class ActionGroupDemo extends SwarmImpl {9 r0 B) s2 Y2 L* e$ \  J7 ~- ^
        ScheduleImpl schedule;
7 l+ e, x- H& z  n        ActionGroupImpl actionGroup;
6 q; X4 d2 t2 J) G- i        ListImpl list;  T% W+ O+ |( D1 o1 B" O8 I# }
        char Id = 'a';; i' U, ?0 g4 o9 z+ W) l5 ]. Z% x

) K. D* |/ M3 t, d4 T        ActionGroupDemo(Zone aZone) {
$ B& H) K6 n/ h' V                super(aZone);1 `. Z, O( d6 q( k
                list = new ListImpl(aZone);- B& l7 _7 [) c: d2 S  d7 V
                swarmSetp();/ W& Z" g9 M+ \: U0 v9 \
                actionGroup = new ActionGroupImpl(aZone);7 j9 R  }2 w. \! ~% k* c1 T
                schedule = new ScheduleImpl(aZone);9 M; k. t8 f% u  m3 p, R
                try {, d1 h; }0 Q! O$ s' |9 ^: X  E/ M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 l$ P: @4 H" _5 W$ b# D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! F5 \5 t) j3 w% a% C8 I$ L                        
& y2 S5 x8 T/ K- R                        actionGroup.createActionForEach$message(list, agentSel);
& t% G6 U7 x5 _& s                        actionGroup.createActionTo$message(this, swarmSel);
' e7 T- _* K2 ?) f4 t7 n8 O# q! K% O                        schedule.at$createAction(0, actionGroup);1 C% Q+ I8 s+ O: G
                        schedule.at$createAction(1, actionGroup);
( s) U# R3 r+ R! I; I% B. {                        schedule.at$createAction(2, actionGroup);% N; b! ^9 F. U7 ]
* G3 C& P4 m8 \! U
                } catch (Exception e) {1 H* r# b- n6 c7 q
                        e.printStackTrace(System.err);
, @0 Z, t- x- m' a1 |! b6 I* X8 a                        //System.out.println(e);# t( b- H( V; H9 q5 }+ j$ x
                        System.exit(1);" }4 H1 h# u: z4 ?3 b
                }
) Z$ S2 K  y, I  C& J+ e) v% |7 d5 y
, Y; m& v: X- {2 y; z
        }( G& M  G+ u0 E, p5 n, r+ C
& `% Q9 E' ]& d8 f  c
        private void swarmSetp() {, R8 @1 Q& r+ l# U6 S0 |5 F
                list.addLast(new Agent(Id));; m5 _4 S# b4 `' ^, c6 @& ~# g
                Id++;; @6 e( T( m: i$ X1 Y5 o  _
        }
$ ~' J% H* ^! o. H2 j* |! A. w% q) n8 T
        public Activity activateIn(Swarm context) {
6 z+ }8 g5 @# L/ F. z' j                super.activateIn(context);
! h- R' V! b5 N4 E% o; u. Z                schedule.activateIn(this);
8 u" G, c; Z4 p" i+ P' H# ]                return getActivity();- I- H9 Z7 V) J7 i1 c: j
        }: v0 T  X/ A+ Z  A& A2 `
) K( d$ [0 Q9 L/ @
        public static void main(String[] args) {
; K0 m& E/ T! m% N9 v                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# H3 |" ^, x7 Y0 P: i. Y' X
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, X, Z. X4 [0 ?& z% ^$ z$ i                swarms.buildObjects();( s  g% ^0 o; e" ^( e3 U$ L0 L% y
                swarms.buildActions();
+ Y5 ~( r: |( V* J  q) Z+ n# W                swarms.activateIn(null).run();
9 H* p$ s% @, u% d+ _. u  V  W- ^        }
# b( P4 L+ o( D$ ]
" g4 A* G* F7 u4 q: i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 02:27 , Processed in 0.015164 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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