设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9608|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 U! @! B  q: l, v) Z8 S) ^
9 c. }; s5 K  E6 Q' E9 y# d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 O7 t$ o2 o" O, h7 F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 q& [; l2 Q- v! d8 x
swarm.SignatureNotFoundException
6 x6 I5 A) m+ O        at swarm.Selector.<init>(Selector.java:76)) s# t$ H1 e1 J% C0 R3 j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 f' H2 u- z  ]% t8 k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( N# y, y" v" e5 N0 f
; \  Z' C. K# C3 Y; D  ?& m# a) R' Z/ Q0 m! n9 x. L9 R) S4 w6 g& X
import swarm.objectbase.SwarmImpl;' n1 X+ s& P) B# N% f
import swarm.objectbase.Swarm;! O$ S" ~4 @+ N* l/ p7 i0 t
import swarm.activity.ScheduleImpl;+ |* u, e+ K/ h2 ?/ g5 G7 U: P
import swarm.activity.Activity;
) W, q! Z  C( B4 w* @import swarm.activity.ActionGroupImpl;
1 a3 J: a$ f5 N) b9 wimport swarm.collections.ListImpl;
6 }7 W% v* V% \0 bimport swarm.defobj.Zone; % _+ j" x% G/ A
import swarm.Globals;
9 j9 Y6 @1 O1 @" I' x. uimport swarm.Selector;6 S" h- O  I  `6 w' E* Q2 i) C
import swarm.activity.ActionGroup; ; A+ [0 H, h% m! f0 \
class Agent {0 P. R3 H3 |" Z4 @7 g  r4 {
        char id;5 u  y6 r' O. B! ~- }1 O4 l

1 n& u1 _, E# ~8 s1 B        Agent(char id) {6 Y3 W2 f1 C8 u6 |% l7 d4 T
                this.id = id;
! U# P/ u! Y- a/ L/ w        }4 Q) R& I7 c! S2 A; ]$ I- W7 O
8 v) H( E$ r$ {
        public void agentStep() {# N! q0 k  |6 k$ j1 }, A/ s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, _9 B( I# M/ t1 ]        }
: j% X/ W" o5 g8 Z3 N8 P' w5 z}
" M3 @5 ^/ V/ J& E6 M$ V( `) }0 L& @& c) r
public class ActionGroupDemo extends SwarmImpl {  a. r7 M2 w5 F/ U
        ScheduleImpl schedule;
- |" T, c1 ?+ z& Q' o0 Q        ActionGroupImpl actionGroup;
: K$ o5 y$ ]2 V        ListImpl list;/ R7 ~* q. D$ l5 A$ N
        char Id = 'a';! ~. B- u: T/ E7 {( T4 y: t7 ^9 i

) a% C1 _- f& J* }6 G        ActionGroupDemo(Zone aZone) {
5 a0 z0 F2 ~: v4 h                super(aZone);
& }  m( \# c2 t6 R7 L                list = new ListImpl(aZone);
( O  Q+ P4 r; G4 F6 w                swarmSetp();
: P/ Y8 }: E( n/ \' p& A6 C                actionGroup = new ActionGroupImpl(aZone);
, N# g- h/ V' P/ [! `, `                schedule = new ScheduleImpl(aZone);
( E  n8 D) A% ?. J" y+ D( T5 r                try {
$ i# u$ K/ g" U, A% B' i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, I. D5 X$ V" ]/ P( O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; T9 w/ s0 [6 n/ U) X& P$ G                        
9 s9 e4 Q/ \8 L& K                        actionGroup.createActionForEach$message(list, agentSel);2 K& h4 _0 O4 l( A2 Q3 \8 k
                        actionGroup.createActionTo$message(this, swarmSel);# @) m: M! q2 ]) I' b
                        schedule.at$createAction(0, actionGroup);
  Z0 l/ y4 E; a0 `- S! @9 P                        schedule.at$createAction(1, actionGroup);
- [0 P0 d# t' U( Y                        schedule.at$createAction(2, actionGroup);% C. T/ d" ?$ N

$ [) U1 n( b; \* H: O+ W- n1 c                } catch (Exception e) {) H: S8 J) }! g
                        e.printStackTrace(System.err);% J7 g! o; |+ ?& d- Z
                        //System.out.println(e);
( |; w4 d- h" P' e3 S$ p9 n( [                        System.exit(1);* X2 H0 u% }) S; {! l) y
                }/ @# u5 m2 r$ B* g9 ]  Z; E+ p

$ z  U9 R6 q+ R' f
4 Q6 h# j) ]. I: q        }# N( `* h/ p6 b& X% U  S

2 ?2 T7 D- R7 J( U# L0 C5 r' E        private void swarmSetp() {
( Q# E. K  k9 z8 K; Z' x6 K. f                list.addLast(new Agent(Id));4 ?  F0 ~/ b2 V$ n  W
                Id++;
: y3 @7 v9 r  n" }9 A/ n& R        }
* R% K( `8 r' e8 O
- ~' h* _  J3 |0 i        public Activity activateIn(Swarm context) {
( x. T/ H2 `7 S2 D% y: y5 f, N                super.activateIn(context);$ ^5 y" u4 J: y* C
                schedule.activateIn(this);
3 Z/ ]! h; U0 Q' g, S" t- s0 r                return getActivity();% c& v( |. k0 m, G1 o4 y
        }
! D" E6 @# Y+ ^9 d7 J7 A' X" ^5 I' a" e, G) n1 N8 s& g, V* p! o& ~
        public static void main(String[] args) {
7 e/ B8 _( t0 z) N1 o3 w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# D7 I+ }1 V" ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; _5 J- x5 U( A) C. v  F; i( X
                swarms.buildObjects();& }" h: X+ R! ~: X& {$ T
                swarms.buildActions();
5 c" N& }4 }, `& g$ p7 B                swarms.activateIn(null).run();; s/ W8 c2 v" s/ M7 C; \. J* k
        }4 u, ~: C3 O$ u  w
7 F1 b. R, Z$ i1 N6 h9 E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-16 19:41 , Processed in 0.023341 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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