设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8454|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 h1 {5 Q! o& j7 b3 G' Q2 _) ~7 R8 O& W% D9 @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 K0 i, `$ ^, j; ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., G7 w# F; P5 C/ k: T
swarm.SignatureNotFoundException* R" f; \  M; c1 p' n( {5 K7 v
        at swarm.Selector.<init>(Selector.java:76)- ^7 O9 W  \8 Z6 A* k" N  I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). P7 R  x7 P5 K# ^! X% B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- @: A: E- f- n( o! H

' Z9 x9 u, y; i! B% S" V
) _% }* w2 j: f6 M6 P* Dimport swarm.objectbase.SwarmImpl;
9 j9 h0 W- |8 i2 d/ \' Nimport swarm.objectbase.Swarm;
3 ^8 j' ^2 d0 pimport swarm.activity.ScheduleImpl;
- c7 a( }( U7 t: v$ limport swarm.activity.Activity;$ G& Y' U; j! h* \# b6 t, \0 F1 r
import swarm.activity.ActionGroupImpl;
- I7 c! g, M6 X+ f& k! h0 mimport swarm.collections.ListImpl;% s$ y& X6 T* j( _8 l* ^# i6 m
import swarm.defobj.Zone; * g  H% U6 ]  ^' b
import swarm.Globals;
$ m1 |# `2 s8 }import swarm.Selector;
. B9 F0 I6 \$ D9 [! Y7 Vimport swarm.activity.ActionGroup; 6 @- c$ T) o7 [6 ^4 @/ {
class Agent {
* q( ~7 L1 H& z        char id;
8 T5 B, R5 A* f  s+ @+ L; e2 R4 C7 g0 y  p$ |. u
        Agent(char id) {
% I4 d. L  J( r) \" L1 r* Z6 u1 F                this.id = id;
2 a  P9 T4 m8 h8 u        }
9 c; R8 E4 }% A# A" n4 N8 Y) [3 ^
% B) E) J1 x; Y7 g2 S2 P        public void agentStep() {
( _0 ^; J( u7 z, j+ w9 a0 h" E                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 @- j& E2 W7 S8 S; K        }
4 z9 h6 [9 x9 o6 @}% }- x( @1 d) W9 j& ~

( S/ H5 l$ ?/ |' }. @2 b0 Ipublic class ActionGroupDemo extends SwarmImpl {2 G) i  A; {9 j( A4 O
        ScheduleImpl schedule;
7 E4 d/ E( i2 j- o: L2 U1 H2 |        ActionGroupImpl actionGroup;
4 h7 `# j* }# p% Q2 p( v9 X; |! q        ListImpl list;
% b& o  S' y8 \        char Id = 'a';
' H, u; G0 ]" [) M8 L' _/ s! i
        ActionGroupDemo(Zone aZone) {
8 A; b' n5 Z) F% N( K                super(aZone);
" I& O; V0 z2 e                list = new ListImpl(aZone);! W) e: Z( ?) C/ {4 ]' e
                swarmSetp();
# @( x( E; W/ [                actionGroup = new ActionGroupImpl(aZone);/ C/ G; W7 k- O4 U, ?3 r( e
                schedule = new ScheduleImpl(aZone);
/ @5 r- l2 u2 f( V6 r                try {
' e# e/ h( _; M3 Y* a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! q9 A, g6 C) o$ ]) s0 T( B/ }% ?7 {                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* l% E1 W' h1 k1 b
                        0 C, H) c- e& h" q) D5 I" o
                        actionGroup.createActionForEach$message(list, agentSel);$ p7 J/ m- r2 a% l
                        actionGroup.createActionTo$message(this, swarmSel);) `$ X# [% S: q, ?3 m. Y7 @
                        schedule.at$createAction(0, actionGroup);
" Y, m' F9 M  Y4 q                        schedule.at$createAction(1, actionGroup);
" ?# a  w# Q4 i& B  t                        schedule.at$createAction(2, actionGroup);
! j$ j7 A6 S3 u4 M3 I- x  r/ K: o( U8 a% Z6 S) h( G
                } catch (Exception e) {
3 j; L/ C/ ?3 m9 v0 J# ]- Y                        e.printStackTrace(System.err);5 F1 I6 S- X6 `" O
                        //System.out.println(e);- w1 w- w8 S7 T
                        System.exit(1);; h+ ?6 g" v# P$ M! O) T
                }" G7 M# e, ^5 P, p
4 E+ v& ~( ^% f5 T3 Y+ m

, W! B* A( \# W. n' l" L( ~: B        }$ T" U& z; C: f; H& {1 n

/ Q- o% q6 s+ g+ x: `' r$ U        private void swarmSetp() {
: E( e$ G8 K2 C+ j. d* E" A                list.addLast(new Agent(Id));/ w7 U+ |5 M, U/ L  Z" V2 j
                Id++;% y! X% a- e3 C$ `6 J
        }' A, A7 W, V# u5 Y( }, a' l! {2 k

8 f  R5 x5 L  J3 u( R        public Activity activateIn(Swarm context) {
0 J7 {  c. G& N; h: M9 [+ K                super.activateIn(context);
$ [0 u  V/ k5 Y4 R                schedule.activateIn(this);
0 a' h# k* Z* w, P! K                return getActivity();% t$ I8 C" b4 k! u
        }" F1 T  v# k0 T' e1 Q. m: L2 d4 k

% x: u1 R, A+ ~' z; B        public static void main(String[] args) {3 |" {, r  f! A/ D, }9 b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 l. ]: p6 A+ E6 k+ Q+ C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 n+ Y3 g8 b& f7 e% ^                swarms.buildObjects();
+ i: w$ x! e$ f                swarms.buildActions();  ~4 x6 T5 _" p8 a& r# U
                swarms.activateIn(null).run();/ o* d, a8 x- a5 A. ]( t0 }
        }& i6 D2 h% R& @. z: F; F
3 J1 F* ]5 d8 L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-12 19:53 , Processed in 0.022764 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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