设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12957|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* G+ Y0 m  M/ H8 q1 Y1 k2 Q
- |, M# _. l  [# M( F3 ^; I7 F: O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ f2 f. K  |6 w1 ?6 P) Y  w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 q) b$ {( D$ f, F$ K
swarm.SignatureNotFoundException
: S) d' B5 Z) _1 \& {        at swarm.Selector.<init>(Selector.java:76)1 l: ~, p+ n! R
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# m& z$ g, r# d' c, P# b% j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, Q% I, h- @- |( Z8 L$ s) g# ]& n# ^/ ?7 K6 `1 q: E8 z

6 W( @3 N  h5 n2 ~2 ^9 Q; i* N, jimport swarm.objectbase.SwarmImpl;( ]" v+ A) t+ u3 E4 j+ T( I3 J
import swarm.objectbase.Swarm;
4 @  L- g+ V& @& v, ^; |. G7 Limport swarm.activity.ScheduleImpl;
2 {; o9 Q% x) u) D6 p$ Yimport swarm.activity.Activity;
" n& y7 Z* C3 e* K% }& ^+ u* cimport swarm.activity.ActionGroupImpl;
! V. V+ d$ T4 h: e/ ^8 limport swarm.collections.ListImpl;5 O- [9 e3 ^. N
import swarm.defobj.Zone; 2 O0 H6 k- r: F$ C, K- ~
import swarm.Globals;7 t% t& g6 }+ \6 K4 ]& X( m
import swarm.Selector;  ~% W8 F, K& c1 t/ _- U4 p
import swarm.activity.ActionGroup; ! u7 S. j* l5 q0 ^; O
class Agent {8 A& v& W8 ], x6 N
        char id;
% n! J, P; A) R
; y" E4 N" \+ {8 `        Agent(char id) {6 p" R7 K# G, `9 m$ w
                this.id = id;
9 i7 h: C0 ?6 K3 ?        }5 L0 ^4 w+ @2 F! `' w- t7 J$ i* |

1 m4 e, m$ l! p$ @5 W        public void agentStep() {
/ j+ ?9 [: D' o7 K: i                System.out.println(id + ":" + Globals.env.getCurrentTime());
* F" @# q8 F8 P& p/ O; l8 G7 r' z        }. Y1 Q# T# W8 q8 [+ p$ J
}  ]9 }6 N; E6 w9 r- U" Z4 ]) g

. M& c' B6 ^) A" K) epublic class ActionGroupDemo extends SwarmImpl {1 p6 ^+ Q- x+ t( r
        ScheduleImpl schedule;
& D: W" ]% y  W        ActionGroupImpl actionGroup;, i& m- l  U& y9 L  V& ^/ m
        ListImpl list;
8 a* g# |; w# N. y% M+ G4 ^- G' P        char Id = 'a';. W6 M1 [1 ?8 G9 |6 U
( x- ~" @: t* i. {: ~6 w* l' N7 o9 Z
        ActionGroupDemo(Zone aZone) {/ i3 A  d# M. Q3 o4 g2 D) D
                super(aZone);/ E5 _, {$ S3 b7 W' \* T
                list = new ListImpl(aZone);
# x+ a4 ~: n6 [" q; j                swarmSetp();
+ \% V6 |+ a. m; j# j3 J5 S                actionGroup = new ActionGroupImpl(aZone);
$ d* l8 l( z9 o                schedule = new ScheduleImpl(aZone);
6 ]$ o$ D5 ?0 ]9 X' H( I9 Y6 f                try {+ l# J4 z" |% e3 R; K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ g9 L4 _5 q& |% q9 q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 f# I  b1 ^( Z) @* i+ H                        5 P4 c' F+ f. M8 Y- F5 p
                        actionGroup.createActionForEach$message(list, agentSel);
6 u$ ~4 J3 n& Z$ e3 Q7 }                        actionGroup.createActionTo$message(this, swarmSel);
2 A' y, U1 r/ U  d" j, R/ C                        schedule.at$createAction(0, actionGroup);
/ y$ T' N, B/ P* m8 H3 }                        schedule.at$createAction(1, actionGroup);* Q5 a5 m: Q6 h5 D: Q! K
                        schedule.at$createAction(2, actionGroup);
0 c% y- [+ z! M* S6 A% Z( D) g8 |# K# H# [
                } catch (Exception e) {( v* F9 |% Q. F5 G- Y
                        e.printStackTrace(System.err);4 X0 X. t; p# [+ W
                        //System.out.println(e);
2 ]$ u5 x; H; A2 D                        System.exit(1);* g5 G8 z, P8 h4 o' j9 W. @) O
                }
& F2 F. a( H  S( c0 M; _/ `  r7 I  ]
# p. C# ^6 e% F  X
        }
' X/ b. c* o1 w0 S9 T. I
! ]6 r9 C1 H0 s2 e9 h; k+ p        private void swarmSetp() {9 m& i! G- K# A+ \; g+ N% i
                list.addLast(new Agent(Id));
% b$ r$ n9 y9 W: ?                Id++;
. |) w1 q# V6 F$ \+ |3 f        }
! R3 `2 u# B- }4 M
5 s3 s7 {# G9 @5 p4 p- ?, @* B        public Activity activateIn(Swarm context) {
- ^% L% X3 h; |! j: t                super.activateIn(context);
2 H* s4 |7 {' y. M" e                schedule.activateIn(this);
2 t* ?! J: v, k8 f( h                return getActivity();* A' T- Z2 I9 {. T$ [* d# Z* t
        }6 O8 V+ G( A* I) j$ S

) N$ r* T" G& {        public static void main(String[] args) {* _9 M3 f' L% @( `( O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ ^( [3 M5 x5 ?* A6 x
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, \: q/ x/ n7 Y: K$ l" u
                swarms.buildObjects();  W* x( f6 a6 c% h+ t
                swarms.buildActions();1 r6 \. }2 w/ M. i! {/ R2 {- [
                swarms.activateIn(null).run();
7 z; W+ D# P$ N" @6 j  k# w        }
* h( v$ Y" a0 G5 a9 z7 _8 r, s" C* Q- e+ \
& Y7 }  \& T% k- m! B: s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-24 07:25 , Processed in 0.015866 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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