设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12405|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % s0 Q* {6 E  L0 @: ?; A: j6 o, j0 b

3 `( {& T: B* e: ~. [* g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- b) \9 f, E( [( J1 ?7 w! S. |9 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# N7 i! I( l) A. p( S- L/ G5 n+ Eswarm.SignatureNotFoundException
% Y5 [6 S% X. ^8 B6 S& {/ c- C        at swarm.Selector.<init>(Selector.java:76)4 w3 A: @1 u- y6 v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) z8 `$ ^/ M, D% _' m5 U) x0 N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 S* O& l+ K2 X7 @1 r/ R1 s% m9 _7 {. n
  W9 W; C& b8 z
import swarm.objectbase.SwarmImpl;
0 X3 \1 L. J1 Timport swarm.objectbase.Swarm;, ?1 U) Q  I- |4 E
import swarm.activity.ScheduleImpl;  o1 o% o( x0 Y4 j2 ]
import swarm.activity.Activity;$ o$ ~: S7 u4 ?( e1 H
import swarm.activity.ActionGroupImpl;( N3 R( N$ J- Z. m
import swarm.collections.ListImpl;0 `- Z7 y; O8 V/ W/ s' o
import swarm.defobj.Zone;
1 p) @* Q4 r9 o; R4 S+ `* N0 D' {import swarm.Globals;4 t* }) v$ s, z6 c0 \
import swarm.Selector;
& O, K1 v7 D- p- {* \import swarm.activity.ActionGroup;
& s5 Z# V1 \7 \9 y8 cclass Agent {; o0 g! Y+ l0 ^1 s4 }4 a
        char id;$ Z+ Z6 G% ~9 n7 o- [  V

- `& r; o" K9 R        Agent(char id) {
/ x5 h% ~& y/ R1 G& M: w                this.id = id;
" j8 H+ c; E  ~- _" v7 t* L2 H. e        }, I2 d; Q7 _- a4 R# p5 U
* o# r5 }2 S' a$ n7 `
        public void agentStep() {8 v; O/ `! l/ e( P7 a
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ E+ C/ q0 k* g- `* _" A: S  _/ K        }- l" j9 S8 p- y4 C# U8 u
}$ h4 u( }! T, A* g; v' ]6 j* {
& k* A& {  r" W$ q* v1 M5 u5 t
public class ActionGroupDemo extends SwarmImpl {
6 K' {4 \% Y! o- p        ScheduleImpl schedule;
4 M2 q2 B& R0 I4 P* M9 J        ActionGroupImpl actionGroup;8 W- n( ?- d/ J  y3 g+ o7 y
        ListImpl list;& B% x% S  \# n& \  s/ Q
        char Id = 'a';
+ U( V$ l6 k- Y  R5 C/ ?+ ~: M
6 r! s$ W0 T( |        ActionGroupDemo(Zone aZone) {; C' `- w# b( O# ^
                super(aZone);* V8 V) L* k% D
                list = new ListImpl(aZone);- U( m1 ^! k& w1 E' ?
                swarmSetp();
. ~7 d- l( Q( }$ h# C; N                actionGroup = new ActionGroupImpl(aZone);
0 E& K  [* F& h/ X1 e3 o, q) ?4 [                schedule = new ScheduleImpl(aZone);8 u" G( M- n" R* V( O$ F8 i9 z
                try {1 J# N7 N& K6 F) {9 d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' `2 p  Z) H' O# n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ A0 F- y7 `& N! H0 p
                        6 V; Z; }5 n- g. ~* {5 h" d; `
                        actionGroup.createActionForEach$message(list, agentSel);+ j4 V# q9 Q; ^* e8 [
                        actionGroup.createActionTo$message(this, swarmSel);) n% z# c0 {9 {) Y6 f# ]
                        schedule.at$createAction(0, actionGroup);2 r. w0 A0 m# T
                        schedule.at$createAction(1, actionGroup);1 u: S0 p# I3 e1 N2 ?+ f( e
                        schedule.at$createAction(2, actionGroup);
% S; B( ?& Q; S8 E0 a5 C# T1 C7 O) P0 \- h% C& `2 `$ e! k
                } catch (Exception e) {
0 K+ A, H9 x% k$ v" `                        e.printStackTrace(System.err);& L* V# g. U; k
                        //System.out.println(e);/ n& b5 G$ T2 d& N
                        System.exit(1);# G+ Z2 [3 g% a
                }
, ^3 ^6 g+ T- D' e( F. y& K! N3 U
/ ~* n: P) E9 T
        }  ?1 O( J+ t) u: w1 h
; B2 J# p' K+ `4 O
        private void swarmSetp() {
6 M( g4 e; e+ W1 L4 H                list.addLast(new Agent(Id));
' b& f# ^+ X: ]5 w5 y- b+ H- B                Id++;
) X8 e1 l" k* ?- \        }
0 f0 P7 h. g2 j
- {4 D- S/ G# h        public Activity activateIn(Swarm context) {- V( V( B: _+ ]1 C6 x3 R9 i
                super.activateIn(context);7 C- Y) n2 E" ~: h
                schedule.activateIn(this);# B+ y+ P5 X3 r( W, w, T  W
                return getActivity();+ Y5 G- F- P( m' U- ?$ k$ U
        }
% P$ Y8 s( G+ a& h2 W! p: u8 h+ a/ U
3 v% l( m$ J- S( C2 O1 h        public static void main(String[] args) {
! H; N! e; r  W1 a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& g3 T9 O: Q, h$ g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' O) f" f0 j' y2 f! _                swarms.buildObjects();
) L6 X2 F/ @% u# }" a                swarms.buildActions();
9 l3 F, w7 Z. x* T8 S8 ?. E6 o                swarms.activateIn(null).run();, T- p5 l6 s# l& K; P* l% l# o2 r9 o$ v
        }: r% M5 }- y- K* r

- ?0 Y: M, O* ^5 v1 F/ Q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-7 19:47 , Processed in 0.018975 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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