设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3994|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # l5 \5 h6 |) b/ }0 _  |! L" K& F) t% G

2 |4 U6 F* F9 ~% u! o9 y7 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- O: M: D$ |) g& p9 [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# H6 S! {/ O/ N6 z: `swarm.SignatureNotFoundException
0 I/ L0 J, h# h# M7 u        at swarm.Selector.<init>(Selector.java:76). a" c8 d! V: r, D" k7 [+ x" C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# r, Y* [4 a+ A8 t* u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) L* O- S( S, Y/ y! q- ~$ j6 J! U9 P9 g8 f8 I
( w5 g2 {: r) v# o  f, [4 v9 O
import swarm.objectbase.SwarmImpl;
" ^7 t/ D- a' \5 p% oimport swarm.objectbase.Swarm;( i$ V% _( ~$ C/ c3 b! z
import swarm.activity.ScheduleImpl;
$ {* G8 G$ K) s3 y' t0 qimport swarm.activity.Activity;
9 P  [2 ]/ w1 n5 ?7 C; Vimport swarm.activity.ActionGroupImpl;
0 c- h/ h+ L3 l3 v: pimport swarm.collections.ListImpl;) z$ s# s* S2 L0 I
import swarm.defobj.Zone; , X5 ^9 ^0 U0 w* V5 V5 d
import swarm.Globals;, ~; U5 i2 O7 A9 V- H8 ~% Z3 x
import swarm.Selector;
! D3 O& }3 Z7 ^; A  Rimport swarm.activity.ActionGroup;
" \3 v7 u1 i/ ^/ B: `% H5 ?class Agent {1 O% z  C- h% A, P6 U& I& v
        char id;) G! ^9 _, w5 R) W4 P
' ^8 k: ?7 ^+ q' ]
        Agent(char id) {
9 m7 R( [' e2 ]; K6 H1 r                this.id = id;+ ^: C. C! m! T# s
        }$ L3 w% }2 s1 a8 }! R& V" p; |* ]

" u& ]. u2 [6 Y7 @9 d2 P+ w        public void agentStep() {9 B- H8 I# A: z* I
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  `/ k, w) [3 k. N* B8 t4 ]' W        }
6 A! N6 t8 O) F' z: Z0 d% r}
: @( k$ W9 I+ ?$ w9 V
2 c4 c7 ], _. j8 J$ apublic class ActionGroupDemo extends SwarmImpl {
% m. j% T' x5 K  A0 {        ScheduleImpl schedule;( Y: w; `/ m5 O3 M  X7 m
        ActionGroupImpl actionGroup;7 p! A$ s' K- J3 h5 t# H
        ListImpl list;$ q- [* [# O2 Z$ I/ _$ U
        char Id = 'a';! [- k7 j' J! d/ O) W8 Q" x' X/ g

! f7 U2 K" m4 ?  q' E        ActionGroupDemo(Zone aZone) {
# q0 ^4 |  d$ f2 d! a/ O0 }+ z                super(aZone);
; k* Z4 G! u( h! M" d7 E1 q& @                list = new ListImpl(aZone);
6 u. Y2 Z9 X1 Q% C( ^, b: {                swarmSetp();
. S& O4 u" v4 d4 Y; e+ R                actionGroup = new ActionGroupImpl(aZone);
4 a5 p4 l' G$ C& c                schedule = new ScheduleImpl(aZone);
1 F4 U" S- D' H7 p% x% O' D# y                try {
% f2 b* f; l+ i  H9 z. w. @! A. T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ R: P# V; Q! j( c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 y4 \& q% C* N7 V" x0 i/ ?                        
# _- R) z5 n! F; d                        actionGroup.createActionForEach$message(list, agentSel);5 k. G4 q* I9 z- r8 c. r7 S
                        actionGroup.createActionTo$message(this, swarmSel);6 V# i' @3 I# C0 k. d3 b
                        schedule.at$createAction(0, actionGroup);2 ?3 ?' y' x! X& V% |' U- D5 [' ?  v
                        schedule.at$createAction(1, actionGroup);
+ ^' @6 g9 u: U) h2 H: P                        schedule.at$createAction(2, actionGroup);% k& ^' C" g6 \; f0 {$ l  G
- J2 d/ q2 O3 y* a4 j: t3 y6 B
                } catch (Exception e) {. y; m$ N* x1 M# j5 n
                        e.printStackTrace(System.err);( W8 z7 u1 `) b9 K7 m* y' n  Y
                        //System.out.println(e);
3 @2 a9 }7 P1 a2 \( [  [                        System.exit(1);
& c7 S, e  H( s  N3 b                }
& F( `$ x( H, }" q$ c1 K' ?) Y7 }0 i
7 f. g1 w3 k  `+ a% v4 N, I
        }
: m! v! k( @- r0 g; Z: M; s2 r$ b# c8 f# w6 A4 g
        private void swarmSetp() {! l9 h4 j9 P) S  ^' O' r+ T# k( v
                list.addLast(new Agent(Id));6 W! ?( B3 u& G. r
                Id++;
% m6 U4 a( Q! @) m- n9 Y        }
6 ]" ~% |' |3 r% w! Z; V& D+ A6 ~! u0 O( W6 a0 u& E, G
        public Activity activateIn(Swarm context) {
+ @5 r$ V1 [# S& n& @9 y                super.activateIn(context);3 b! F, S" H2 ]5 L/ B0 R
                schedule.activateIn(this);
6 G4 P4 H0 C3 `2 V3 s, ~( o                return getActivity();
4 L: h1 Y* z0 {        }0 \0 R+ V# M% a) x! Q* \  h
) q% Z- O; V! ?5 S
        public static void main(String[] args) {
4 k& o6 q- e) _7 w9 \+ l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 }' h8 ]& B5 G' e0 k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 d: N' [3 g& ~! K/ Q# d
                swarms.buildObjects();
" R6 |* R: ~" K; \( [                swarms.buildActions();
; \8 G7 c, Y! k0 F* y                swarms.activateIn(null).run();$ w( o( o- ^6 a# e# A$ O& r
        }, P# t5 X; s. g
* _* ]4 ]7 k: G! `$ C% _' w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-4-3 01:57 , Processed in 0.015521 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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