设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10004|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " o6 _: z0 e$ [+ @; n& o! Y
: A+ b2 L5 l. I* A2 i5 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, R. h, t  k2 g( H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! i( _! b  L" P7 t7 Q& Q
swarm.SignatureNotFoundException
: D) L# n- e% F0 f2 l& e; W        at swarm.Selector.<init>(Selector.java:76)
" ^. B& [: `7 F4 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( {  K6 O' e- L- y2 n; p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) r' Q, {6 p9 `$ P1 I" c
+ H, Z& Q& S! }* F( N' J( M

9 S( H2 i; H( h' uimport swarm.objectbase.SwarmImpl;
- N3 D( |6 \) h  \8 `0 `  ?: {import swarm.objectbase.Swarm;
. ~- _: f" b8 X# g2 z7 d& @/ dimport swarm.activity.ScheduleImpl;
6 z) p8 X3 J! Y" limport swarm.activity.Activity;
8 R- i$ k6 _" e7 ^9 R" I( Cimport swarm.activity.ActionGroupImpl;
3 r9 M4 z! p7 ~3 X/ simport swarm.collections.ListImpl;1 C4 J- ^& M4 k
import swarm.defobj.Zone;
" V1 {  F3 g  x7 R( bimport swarm.Globals;) I% h+ j- D+ V
import swarm.Selector;
8 s; X( P" e  a; f. M7 E) pimport swarm.activity.ActionGroup;
, k7 t% x9 {) i. c6 d# Eclass Agent {
' J( y: u. U/ H. f) y        char id;
7 Q* H1 t9 R! F1 ?! J* Y5 Q. B7 ~
% H- J/ `: }! k6 A. F1 g        Agent(char id) {% s, q% q3 M5 H! C- i7 F! ^
                this.id = id;4 a2 ]$ |0 M' h4 h* l1 {9 n2 V( v
        }
& q# g! d" }0 w  X4 V3 o
% w7 U. ^+ e0 ^! Q# U  W$ n        public void agentStep() {4 A9 a0 b* \3 q+ B0 ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, I5 s3 b% U' ~- ]$ E        }
# U: G. ]* `( _/ d/ N6 g# Q: g}* v* q6 I; W" [) r' K4 w- w7 x

" ?' n( v- \& d6 V4 [- {* C/ @# hpublic class ActionGroupDemo extends SwarmImpl {! z% I4 R. N  l4 L; `2 W% w
        ScheduleImpl schedule;6 [) ^8 t4 L* x' c" g2 p, y5 c- P
        ActionGroupImpl actionGroup;
; Q' `2 Q* |9 E' R* R        ListImpl list;2 C7 Y7 N5 a4 }# \  {4 |+ b
        char Id = 'a';6 s8 z# \5 C% s( m" K2 R

; R1 @" I  t! Q; P0 c3 C" u: C        ActionGroupDemo(Zone aZone) {7 s' @4 m; @# u, S. w( `
                super(aZone);. v7 k) F4 c# B% b" P4 o& k
                list = new ListImpl(aZone);
9 u) N; W8 h1 B- r# P; M                swarmSetp();
" v8 f- d5 n) V$ m( W$ [2 A                actionGroup = new ActionGroupImpl(aZone);/ l8 J/ u5 [  o
                schedule = new ScheduleImpl(aZone);: ~$ [9 @  d) s6 s& }' G6 n' S
                try {
) v& f* k4 m8 v8 [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& r: A2 r1 f3 V/ Q; c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ j; T/ O" \3 D+ W
                        
+ N: Z) S$ h2 ?) l, @$ ~' Q) T                        actionGroup.createActionForEach$message(list, agentSel);7 n9 P( z$ w, b) X
                        actionGroup.createActionTo$message(this, swarmSel);
0 l& H0 }% j& H/ w( d% u8 S                        schedule.at$createAction(0, actionGroup);3 D# ~4 f- c5 E% k) S
                        schedule.at$createAction(1, actionGroup);* |2 N- c/ \: \5 ]% a8 E. ~% |
                        schedule.at$createAction(2, actionGroup);4 H( i/ M/ ^0 ?) ~

# N% S. i) C2 k; K2 ~                } catch (Exception e) {  ]+ C2 h' [7 M3 n: Z" R  Z/ B# k, v
                        e.printStackTrace(System.err);
8 V+ Y2 F% X2 X( {* H% I                        //System.out.println(e);- q3 h4 O# a% A
                        System.exit(1);
) x; g" X. R6 Y" O7 h                }8 U4 E& ^) e3 C, L& t/ U

) i  b" }3 L) y) w, `1 X/ k, c" H8 Z# L' r8 K# O5 ?2 w
        }
# Y  k; D9 g+ \6 ^  G3 S7 Z, n7 |3 h
& a  l4 w7 o4 p  C9 t        private void swarmSetp() {
& ^( @! }4 l1 U! ]  y  D* X+ [                list.addLast(new Agent(Id));+ d; V/ J( A( x( _9 g9 q
                Id++;
$ {" [' v3 L" C% V* w" Z6 z) f        }2 v: z8 o3 R! f) q, v; R" n0 }# C8 B

/ n0 v1 R5 w6 k6 K        public Activity activateIn(Swarm context) {
% c6 X8 `8 Q- p% [8 Z0 k; E, J                super.activateIn(context);0 c# g& A$ F$ v# }7 l
                schedule.activateIn(this);
0 \" j  A- c/ q3 N                return getActivity();8 ]# t" B  \7 h* [' I8 ?$ `* ^
        }
& }& _% D* Z6 H# Z- N3 Q
8 ?" C  _2 U8 b, w7 K; l        public static void main(String[] args) {
- j6 E* R) a" V7 g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* C0 d' E4 F; Y/ Z" [2 _5 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ {( y2 }7 D$ p% L5 C* v; P
                swarms.buildObjects();
# T- N) J- ~, U" f                swarms.buildActions();
" g# ^$ a) ^' U  u# z3 O3 I8 _                swarms.activateIn(null).run();
  B; o. }& l* A  R3 E4 G        }* I' P2 J4 [4 V& G, u3 _( [) H
4 Z( d( a" z0 ]" ^( c2 [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-31 05:33 , Processed in 0.018743 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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