设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9522|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 |" J. f( m4 Y1 O
* m- d$ @# j1 {& Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  E' D5 y5 C- Q  h* O) t* h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& |3 g% Y' q# x8 K
swarm.SignatureNotFoundException
$ X' I" y9 `; i, F+ E% H  O1 e        at swarm.Selector.<init>(Selector.java:76)5 p+ Z2 D$ s7 k  B/ C9 t5 N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' C( A1 R" Q2 \! W$ y3 I+ g        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, Q# \, v4 X0 M6 K8 A) M! y8 d9 L* {+ A6 A
. Z+ u  ~0 w6 x! o5 @4 d- a/ Z. ^
import swarm.objectbase.SwarmImpl;
. e( |/ o, ^  b4 j' simport swarm.objectbase.Swarm;. P" ^7 J* C" X2 _1 m- m$ B, U
import swarm.activity.ScheduleImpl;
4 i. h% u& s) cimport swarm.activity.Activity;
3 G- F- {  A  g! C$ rimport swarm.activity.ActionGroupImpl;
; A" c" P6 R( Mimport swarm.collections.ListImpl;0 i: F: d3 l1 ?/ J. f3 T
import swarm.defobj.Zone;
$ ?8 _6 R4 Y# i- G! K1 ]9 P+ R1 d/ |import swarm.Globals;2 q: T3 [* ^+ A) G/ Z
import swarm.Selector;# \2 j0 I; Y  E; t3 m
import swarm.activity.ActionGroup;
+ M, q8 {8 t6 [8 [( `9 R/ F! fclass Agent {
$ [8 D  b. u# f& Y3 V0 o+ a- T        char id;
8 o+ ?  u9 X% q, N: V+ G
3 h" l! c1 s. }5 d2 W, x        Agent(char id) {1 _% |$ o, U* P0 F$ ~! u
                this.id = id;
+ q' |5 T5 C& n, i( D" I# \) h        }5 k+ K9 m3 B5 Q$ [& n* p
0 W8 Q) u1 ]& p2 n, j* s% K* _" u
        public void agentStep() {) J# E/ ^- b/ @* U9 L
                System.out.println(id + ":" + Globals.env.getCurrentTime());) B( @- Z( H) t! b5 w  {; @' E
        }6 @- _  s  J9 H8 z; U" J
}7 F) q* D+ h: B# [" U9 b* }) e4 R, q

, p/ Q8 w  o- A: T* j2 E- R* E& B) Rpublic class ActionGroupDemo extends SwarmImpl {
; Q( E  Z2 N1 P7 V1 i+ y        ScheduleImpl schedule;
# _% w! k  o; y' f" K) Y% _. X        ActionGroupImpl actionGroup;! f& \# t/ U% v4 j7 D: R
        ListImpl list;8 p0 A. k2 V( R4 ~
        char Id = 'a';
- O& N+ B% T- N& j5 O; G# M# S& `# Y8 z$ _, _
        ActionGroupDemo(Zone aZone) {: h7 {& W9 K- B$ D/ s: S
                super(aZone);$ q/ C* [: ?0 u
                list = new ListImpl(aZone);( H, D) C/ C9 y  X
                swarmSetp();" G2 E7 d& y  i+ ~9 T' e
                actionGroup = new ActionGroupImpl(aZone);: o7 E- j# G% x! R+ ~% f
                schedule = new ScheduleImpl(aZone);: V7 \( E4 o8 b1 @  b8 H
                try {; \1 P0 ]1 _+ ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- q' v1 O; [0 `( w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 p* y& e" p) a( z                        " a& c7 J6 \5 U4 k, r* |" N8 L6 g
                        actionGroup.createActionForEach$message(list, agentSel);
( X3 j1 U& [$ y                        actionGroup.createActionTo$message(this, swarmSel);6 P4 T4 D: _# R, P& P% t
                        schedule.at$createAction(0, actionGroup);6 S8 M. q7 V; o/ }( `/ C
                        schedule.at$createAction(1, actionGroup);% ], _5 w$ n( b4 [& O, B2 J( F+ t
                        schedule.at$createAction(2, actionGroup);, W, s& {0 i2 Q7 M% k. ?

" g6 E6 h7 c/ z6 K( O1 T                } catch (Exception e) {
1 U8 Y$ n- u9 l7 `                        e.printStackTrace(System.err);3 P; U  b, ~* t. H  u
                        //System.out.println(e);
1 N3 ~0 k, ^1 @/ }                        System.exit(1);
8 P5 g7 ]* Y- }0 a( \                }
! L/ _0 @; ?5 r# Q& H2 ], S6 P* L6 ?8 t8 `
7 P* w  A+ g: g
        }9 X0 T% X) j8 c; m

0 J! X' L& J! w0 W        private void swarmSetp() {# _9 B5 ^, ?' V- D% P$ E3 i5 w
                list.addLast(new Agent(Id));
2 L' a# ]+ s+ t1 J: P; c3 R/ y                Id++;! ~7 T7 A  d, h& a4 n
        }
, w8 h: r- v! @4 H7 V# B
- k& g3 s' _5 h$ k        public Activity activateIn(Swarm context) {
( X+ p' L5 O5 C! H9 Z                super.activateIn(context);1 H8 q0 t% {2 Y8 T: [2 y) j
                schedule.activateIn(this);$ G4 H" z3 N4 c; N% W" t
                return getActivity();
$ p0 T* Y7 j, O' j2 S8 E  `- ~        }
  @' M( K. Q& z8 p$ Z; R; w& Y
4 _' ~1 Z! ]- C% N6 c( o7 D        public static void main(String[] args) {8 i3 V$ _. M  s# D- l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  o$ P" p& v4 a! i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ _% I% o* U2 e5 F
                swarms.buildObjects();
; O. K) K. _1 {# L: G" n" k                swarms.buildActions();
$ S7 ?( ]( V& S$ w* s$ d                swarms.activateIn(null).run();* W, g6 m* N' D3 L! e+ X
        }
1 ]! c* n% Z* R; D( @
* S" e7 D$ N: R; n}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 15:03 , Processed in 0.014449 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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