设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12324|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ s! F' m. h$ e- Y( L6 D3 A+ y2 I# w8 A+ p* ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 d  o4 `3 L. n, T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 y* X# o  m  J0 Sswarm.SignatureNotFoundException' l: ?1 v3 n: s8 R5 y0 j
        at swarm.Selector.<init>(Selector.java:76)) b: h% d3 y9 C3 J4 F  f* s) V, P" d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# N$ \8 w( ~0 r" ~4 L% g        at ActionGroupDemo.main(ActionGroupDemo.java:67), ~: ?) ^$ L/ I3 O. A( h
! Z- v/ \% S) ?3 ?3 z. R. j2 }
) p3 P7 G) r1 K! m+ J
import swarm.objectbase.SwarmImpl;& V/ n- C5 E# F  [8 d3 W
import swarm.objectbase.Swarm;" y7 u0 B5 i5 r8 n6 U
import swarm.activity.ScheduleImpl;6 c8 n$ }6 M( `& Z  _' w" A
import swarm.activity.Activity;5 C# n0 ]3 Z  g7 O% W. \" i
import swarm.activity.ActionGroupImpl;7 w+ D: X. x: r6 f* z, `
import swarm.collections.ListImpl;
$ W" J6 S# B+ iimport swarm.defobj.Zone; ( h1 J- T# w# h* F
import swarm.Globals;
8 k+ n7 e9 s% @8 |1 timport swarm.Selector;
' J6 w9 ~2 i. Kimport swarm.activity.ActionGroup;
. E( t! j9 s. K1 {( [% A7 ?0 Y% Xclass Agent {
3 w! P' x# i: o- ?3 e5 c1 |        char id;
8 Y- X' D% c/ V$ r( a5 w# o' |4 p- j7 t
        Agent(char id) {
( \  M  F6 |, c: _4 D                this.id = id;
: S6 Y1 ^% J. @7 K        }% p- G! G6 O+ P! O) {# g! B% r

1 {  M. s- n" a        public void agentStep() {
. c! _8 [, C3 b- N  m, Y5 F( r                System.out.println(id + ":" + Globals.env.getCurrentTime());5 z- L4 s! A  N; U7 T1 i
        }
! @. g5 U: w1 B  z6 M/ b9 `}0 n* Y1 _1 i0 x% H0 P4 G

# E" N7 i8 X; h3 Y1 F" ?- p; [public class ActionGroupDemo extends SwarmImpl {" G4 h5 Q7 e" }3 s! |0 C- |) f
        ScheduleImpl schedule;8 ^7 d' L' r: @0 ~# M+ I5 d
        ActionGroupImpl actionGroup;
; q; S! Z& [8 D$ p; U7 S5 ]7 `        ListImpl list;
; c. G- L8 P0 ]( d        char Id = 'a';
6 l0 d6 z2 q/ L5 N3 K0 Z" u5 C+ s6 _* m! \. @1 M
        ActionGroupDemo(Zone aZone) {
! ^$ c4 T/ v& Z) |- ?                super(aZone);
/ Z. P; a6 {0 Q3 Q$ E                list = new ListImpl(aZone);) t1 y6 a( E5 H# J. T* _
                swarmSetp();
# N, T. v$ V* S7 E                actionGroup = new ActionGroupImpl(aZone);
; |$ \7 P5 P8 W! x                schedule = new ScheduleImpl(aZone);
3 F+ m9 B: |8 Y2 v7 w1 E. u# _                try {
. F+ C; j* E3 k( t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 \- f, @- c% O0 g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- \: ?' {! i, f6 ^/ }* j
                        ( `$ [% j: ]) E1 Y+ M
                        actionGroup.createActionForEach$message(list, agentSel);
) o  l4 r( J( x: i                        actionGroup.createActionTo$message(this, swarmSel);2 \5 E5 T2 X2 y6 i4 @
                        schedule.at$createAction(0, actionGroup);
% U" S$ v, s9 P1 h. o                        schedule.at$createAction(1, actionGroup);- r$ E; D# R" f  H
                        schedule.at$createAction(2, actionGroup);
/ f" P3 Q5 E7 Q: u' h
6 m9 t5 T1 j4 s# p: E6 A                } catch (Exception e) {# C, t+ ?3 _/ X. e# ~) B) ?
                        e.printStackTrace(System.err);
( g1 I: D/ W, a$ f' u: P                        //System.out.println(e);, [$ g# Y5 M8 T) d
                        System.exit(1);
+ V' @& }0 O1 O                }3 Z& D1 F8 \5 ]
/ j5 F- d0 \4 |1 \2 K
4 j0 ]  j+ L7 |+ V& V
        }
( X* @0 P# N0 G# Y4 E8 e! U* O  G7 R4 z) e( v
        private void swarmSetp() {
* A1 P0 f7 s4 H# @# ]                list.addLast(new Agent(Id));
* ?' v3 M  F  F* h9 |" `- s& \- g                Id++;$ a  r: o: S* T, R+ O: u/ J7 M
        }3 x) S5 w  ^6 U
5 N- s1 B1 E- K, \
        public Activity activateIn(Swarm context) {
5 q4 i4 }1 i9 T. r9 e                super.activateIn(context);
9 u6 w& ]( z5 W: g  s2 V                schedule.activateIn(this);) `, h# C( h, r! T  _& b+ e
                return getActivity();
  S# q" ]* A2 N        }0 q+ ^6 g! O2 }5 J
, i8 R. w3 ~$ N  J" }1 e( b
        public static void main(String[] args) {
) b0 p1 c2 n' a/ ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ R: N$ Z. V8 m7 w$ o: ~% V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 \) ]% @! p* O7 h1 g6 l: w4 z
                swarms.buildObjects();9 E0 ^# z( C8 _
                swarms.buildActions();
3 b$ u! ]" d# b$ \, o% ~  {                swarms.activateIn(null).run();
& X. S1 j5 x/ w3 _        }* I7 W( N) |- b

, ]* @* J: A/ g! L# ]4 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-5 13:00 , Processed in 0.017189 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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