设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7747|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 I* ~& o, ]- [1 C

2 X" P+ P6 v  L4 e$ y0 m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; j5 ?, Y! }2 e. V7 u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  V, b2 Y% ^9 k; B' b
swarm.SignatureNotFoundException# n# ~. M* D: d# ?
        at swarm.Selector.<init>(Selector.java:76); H# i' s, s! ?% ^, z: Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 K# B' y# B' ^+ ]' {( K! N: x4 e2 M' _
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 L4 [' q# a7 [
( }* v/ z/ W  ]3 C. _" N/ r7 e
  Z" g' f/ @! u/ p+ t. Fimport swarm.objectbase.SwarmImpl;
4 @+ N" Q- V  ?0 Y% Timport swarm.objectbase.Swarm;
) q7 X# z  N9 b& ]0 timport swarm.activity.ScheduleImpl;5 R* O2 |3 R% }1 u0 E/ M( b! B: o
import swarm.activity.Activity;
/ `7 I& `* ^& x/ I/ rimport swarm.activity.ActionGroupImpl;3 H3 v. z' h  H; ~
import swarm.collections.ListImpl;! T/ G. N0 J3 r; ^
import swarm.defobj.Zone;
* J$ c' v8 h7 b( R* B/ \, ~" Dimport swarm.Globals;/ V6 J' n& c) V
import swarm.Selector;
$ g, \* v% V, M' C4 c0 Aimport swarm.activity.ActionGroup; 7 g6 @9 d5 I7 A+ f2 a# U% `. l- E
class Agent {
( P* y4 H9 R( \3 c7 |( N        char id;
) ~3 \7 e# C4 k) @* e
8 F- \& z) B$ y" ~" O- V; L        Agent(char id) {) |' z. R+ ?, F
                this.id = id;* y) ]& D3 \! l
        }
6 S5 z9 e; I9 M) j( H  F
6 z- o& W6 z  K+ E2 L9 b- t) l        public void agentStep() {
0 I+ |4 C  N  g3 e; u9 t                System.out.println(id + ":" + Globals.env.getCurrentTime());
* m: _. J) l0 e! h( H        }3 F  u6 n2 A# l5 ]: Z. S* D! F7 _
}
- {' ~, M$ i! I1 h+ o$ C1 T4 V
, g5 l  m0 {' c; @public class ActionGroupDemo extends SwarmImpl {0 O- q( x* @* I) Q* N
        ScheduleImpl schedule;6 g( `6 m; @+ D2 q- K
        ActionGroupImpl actionGroup;" s1 t( J2 [! ~9 w* G! M0 q( r
        ListImpl list;( f% n, W  B- d  ?% f0 _: f, c
        char Id = 'a';- v4 [( m% |- u8 i

% x8 h5 W$ \! ?0 k& B; I/ r& \* Z5 ?        ActionGroupDemo(Zone aZone) {
9 ^) k! }8 u0 L$ L: P5 T/ d                super(aZone);* O- ~, P" B# K; m/ s
                list = new ListImpl(aZone);
5 h( X. F" z6 [  O; H  m9 |) Y                swarmSetp();
9 ]8 T1 G8 G* |& {) ]: n4 \                actionGroup = new ActionGroupImpl(aZone);8 e5 @4 k/ g3 b0 Z
                schedule = new ScheduleImpl(aZone);
  f1 r+ o( `2 Y1 o) l& W; D                try {
- K# s8 a3 i8 y* E. J                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- G4 y0 S( u/ T4 T3 m6 E- Q9 D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ u* t. H) v: T/ k                        4 `0 T) z$ I- K  @! {' s- d
                        actionGroup.createActionForEach$message(list, agentSel);8 B  b$ w. s7 _; q7 K9 _
                        actionGroup.createActionTo$message(this, swarmSel);2 C4 T4 c* R; f$ g& c( ^
                        schedule.at$createAction(0, actionGroup);
( D3 l" D5 _* ?/ T$ H                        schedule.at$createAction(1, actionGroup);
9 W$ `* K' g. N& ^5 l                        schedule.at$createAction(2, actionGroup);
8 U9 @7 w$ I" x: L5 O% ~; j/ B3 X6 Z  w# i1 z7 Z
                } catch (Exception e) {
+ _( ]1 _3 g8 M6 d7 z: e& \                        e.printStackTrace(System.err);
: E, r. `" U2 V                        //System.out.println(e);7 T; a7 |1 T* S3 g$ R
                        System.exit(1);
$ ^6 \+ O- B: |' z; c2 V                }
; ?5 `4 c# C+ U& k( _: O- j6 M0 H6 t, r9 ~
% {. q$ c2 Z3 p7 X4 {1 G
        }
* J" H: L5 `& J9 h0 r; Q
& u4 t3 T, w0 t        private void swarmSetp() {  h+ w" ], @0 P; ~
                list.addLast(new Agent(Id));2 q; V1 Z8 z, j! v
                Id++;
) r6 u3 Q/ V+ ~: z) C. w8 P0 ]        }
- t8 Y6 p# Q0 Z
2 N5 N# |- H' K$ S% E        public Activity activateIn(Swarm context) {
* \& w( k9 L1 |8 x7 X2 x0 |                super.activateIn(context);4 b& b" V0 j; W9 y" ?5 W. J4 s& l1 N
                schedule.activateIn(this);
! l2 H1 k! w+ t                return getActivity();
; n2 j: u0 R6 ]' f' Q  d, K% t        }
: _- Z4 c! e0 @8 Z7 s+ S: s
7 z0 I$ E3 D, K" @- R- p        public static void main(String[] args) {7 I5 j! L) B7 h( d4 f3 o' M5 i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# X" ?5 O6 v7 W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& n' D: X2 |/ a# e4 |' `$ U/ W
                swarms.buildObjects();/ I8 g7 \- g; |0 D7 x- u9 {
                swarms.buildActions();1 A; ~2 Z+ O& i  q, l
                swarms.activateIn(null).run();# n& c. I4 N6 j1 v
        }6 f. x" v- r4 O4 Y/ Y9 n4 ?2 k( E+ b

. o- I5 }4 G/ `  m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-13 14:39 , Processed in 0.024006 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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