设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11628|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / o  K0 q! m0 |, z. J- v
0 Z* `# V: d7 u5 A' _8 b( V% x  N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; [0 J  w& O) o! n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' S, S9 V! h0 T; o
swarm.SignatureNotFoundException
2 j) i$ t* w* |) o        at swarm.Selector.<init>(Selector.java:76)
! L2 N6 B4 A/ Z0 W5 a        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, J1 ], _1 S$ R7 F% N1 o        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 D- B! |& V, k

* ]# y: t- p) M1 E" J
% c" _+ H  ^+ [7 Rimport swarm.objectbase.SwarmImpl;
; |+ P: P* U( n: g6 s8 Pimport swarm.objectbase.Swarm;+ F9 M  w( R, H6 j9 r' y
import swarm.activity.ScheduleImpl;
8 `9 Q& H+ O: G5 @import swarm.activity.Activity;/ e/ I( K# @2 ~. {
import swarm.activity.ActionGroupImpl;5 }- p3 G9 Q+ \$ q
import swarm.collections.ListImpl;) f7 \4 c1 B: O) {
import swarm.defobj.Zone; 1 G" e' k* n5 a- e( z; H- D/ q
import swarm.Globals;
- e1 j+ U: O, Q# `% _% Mimport swarm.Selector;% F7 o' _" a; [  ~9 i
import swarm.activity.ActionGroup; 3 R8 ?4 f$ ]/ g/ r  M' j, n
class Agent {
* k9 l' M! }- [3 D        char id;
, v# {4 X! R1 r/ d7 V' g7 m0 ^. S! O
        Agent(char id) {
! r: i3 w: U  w$ ~! g$ n! f                this.id = id;
( y* M; a2 }: X        }
" [3 F" |# J! c' _/ p& n( W% [4 I
0 j0 V, R6 ~5 c) Z- ^4 a) I        public void agentStep() {" g( U6 f( Y5 }* C/ X
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. t, w1 Z: a; @        }% c# z7 x! n7 K* ]  s6 h. D7 R2 ^0 h1 g& a
}, E" j# @9 e3 V7 s
: L4 Y3 [0 G; c* X, D( {- r
public class ActionGroupDemo extends SwarmImpl {( H1 F3 N! P+ m5 ^, e6 B: O
        ScheduleImpl schedule;
) k) P0 t7 b( U7 @        ActionGroupImpl actionGroup;" B- Y' a; h# T% o( `
        ListImpl list;
  ^7 y- v6 F% i        char Id = 'a';
8 R  B! Y% z% w2 u; C1 f3 {# I. C* C) x( e) N. v
        ActionGroupDemo(Zone aZone) {
0 O; y) H. G) W& g( O9 m# |& K                super(aZone);1 k: X; X3 a1 a, B
                list = new ListImpl(aZone);
' \" z; _  {9 }4 `8 |                swarmSetp();: Z1 t7 U4 t( @" r" y& L6 R2 A
                actionGroup = new ActionGroupImpl(aZone);7 ~/ @2 g" q1 h  Z) N4 p- ]
                schedule = new ScheduleImpl(aZone);6 m: |$ D8 q* K: R/ W
                try {0 U8 R; ^" ?" u" J2 L  J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 q, U) t! r% L- B
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 C. E2 U( f4 t+ }8 Z3 F) _                        * \! H; k, B# _, ^8 j0 R
                        actionGroup.createActionForEach$message(list, agentSel);
; y2 d4 m2 B0 I6 k; O( P. T                        actionGroup.createActionTo$message(this, swarmSel);
/ g" ^2 a# }4 d  N* q                        schedule.at$createAction(0, actionGroup);
- ^' K# N) V- H1 h0 u                        schedule.at$createAction(1, actionGroup);/ l1 N2 N8 q" B
                        schedule.at$createAction(2, actionGroup);
8 A, _; }% G: |" Y
& R' Q4 K5 q1 y$ E1 B                } catch (Exception e) {
4 A8 z& o% I- R- V                        e.printStackTrace(System.err);! j) d9 S. }9 |
                        //System.out.println(e);
9 m3 k, a: B( S& d9 v5 c                        System.exit(1);
2 O( T+ b) Y0 _                }4 y# p, i6 K8 y" ~. x
/ J" D3 a$ E$ C3 `, K7 n
7 K& Z0 V+ v1 E) B! X4 n1 o) u8 s
        }# M) J" F% |; [2 O1 D7 Y

" [6 \2 i# }# R& V/ \& A1 e7 v( p        private void swarmSetp() {: h5 H. S! z! V' k& u' v
                list.addLast(new Agent(Id));
2 `8 P( e" P# G/ |  x3 \                Id++;
& ^, H1 L+ ]9 B, u9 D  ~" u        }
/ Q# \4 U8 S. n& E2 k( m' F* z+ I# q
        public Activity activateIn(Swarm context) {' a4 a' T: V  \+ t+ n- b" }
                super.activateIn(context);: M, Z- B5 @& }! {% g4 ^5 r
                schedule.activateIn(this);
) {* Q) T1 v) O% A                return getActivity();2 \3 ]1 Y9 ^6 w2 ^+ d0 }1 F& M
        }
! I% K* i. i" @$ W0 X, r- z7 m
7 H3 d* w% X* m. [$ y        public static void main(String[] args) {
5 a+ ^( m# U5 b+ c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. U1 P" m  j! o' V. A+ L- A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 s2 @+ S) d0 b7 e% y3 w# W9 a                swarms.buildObjects();
- u7 U% n2 t0 W3 |7 d. ]* T                swarms.buildActions();& q; p- O3 x( V! ~& m
                swarms.activateIn(null).run();
7 i; @1 N% x! W        }5 C! v  [" H$ C8 T
. z0 _# n9 d, ~3 \1 V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 14:38 , Processed in 3.182516 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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