设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13900|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( p0 ~' c7 l) \* F# @, N: K- y  u# K7 J6 l" G# ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 d2 a0 K+ h" |  v# o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. N' ^+ |- |$ d' t$ Q" hswarm.SignatureNotFoundException
" ~9 |1 b) G, c$ J        at swarm.Selector.<init>(Selector.java:76)! o" X; \$ N, }8 h6 e% M* w# p
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& N5 I# W2 c/ o! }9 @
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 w' o. `0 ]4 g8 {* |# [: H* D0 ^7 {

7 }9 X) g8 [6 T! _3 m9 d& Ximport swarm.objectbase.SwarmImpl;+ u$ L1 _$ f3 J* [. p
import swarm.objectbase.Swarm;
1 s: w5 d! C1 a, z! Aimport swarm.activity.ScheduleImpl;
# u5 [! Y. e2 vimport swarm.activity.Activity;- A' r! P& w9 B) h; H8 d0 }) S
import swarm.activity.ActionGroupImpl;
. ^/ h0 Y1 l- _! ^5 A) D$ d% Cimport swarm.collections.ListImpl;
- D+ `; d! q" \- a' y5 e, d/ `import swarm.defobj.Zone;
0 [7 y0 T% t2 |1 o+ L- Himport swarm.Globals;$ S! O' x7 {$ _/ W
import swarm.Selector;
7 N+ Z: y5 W3 _) yimport swarm.activity.ActionGroup; * R* v  S4 x3 O( ?; w" Z1 i, V8 U
class Agent {  J% |7 }7 d9 r7 y! |4 X
        char id;
2 Y! ?1 B' v/ l  @
' f; L& G' h; W        Agent(char id) {: k& W/ u- r3 U  U  z
                this.id = id;8 i& x4 E, v- K7 a8 `! U4 }
        }
% e* i+ l% F/ u& D; ~
; Y7 n+ `+ k: A, P        public void agentStep() {$ f/ u7 V" @; w  S6 q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 D, a* L: R$ E; P) S5 k( U! y) t% h        }& d) B/ D! m7 X. w" k2 f, {0 c
}
7 ^( e( r- x2 u& e/ o1 z% k( d
$ B+ h& i% W+ D  \  I. C$ E5 Dpublic class ActionGroupDemo extends SwarmImpl {
- l; U9 R  |, `3 B; S% N        ScheduleImpl schedule;1 {3 j. g5 b; N6 ^* R0 n
        ActionGroupImpl actionGroup;
8 L9 F5 B$ o7 U  b0 g        ListImpl list;( B6 t/ f1 r$ U" \( G
        char Id = 'a';( K" m/ ?( t- M" |" J( H- G
/ T2 D% H2 X0 Y7 {9 z8 f
        ActionGroupDemo(Zone aZone) {
" _" e- z2 g. a4 I4 i' A4 _2 `                super(aZone);$ z& a6 g) [& |" i$ Q/ [' \5 N
                list = new ListImpl(aZone);! g( `" G( n1 c! ~9 _
                swarmSetp();
7 l9 S! K  {2 i                actionGroup = new ActionGroupImpl(aZone);
  J# y- T0 M- v/ h* x. i- |. q                schedule = new ScheduleImpl(aZone);
4 y. i* [9 X- P( F' x$ ?                try {- {! H* M" c# L
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ U* F; {, a  `% ]: j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 b  b' X8 S; f# o% W                        $ Q$ G5 V( I0 D: m0 }6 c6 M7 m3 Z
                        actionGroup.createActionForEach$message(list, agentSel);
0 w% `' h- c+ p2 Z9 P7 t                        actionGroup.createActionTo$message(this, swarmSel);
* r! a& z$ J% g7 f                        schedule.at$createAction(0, actionGroup);$ k& o3 D  \& m, i$ q3 ~6 V
                        schedule.at$createAction(1, actionGroup);
* y& J. a8 |7 u* T% `) z0 j. r                        schedule.at$createAction(2, actionGroup);
3 K% Y. Q: Z5 n' v) U
: O: \! K5 j; \5 X# R( t                } catch (Exception e) {
/ g6 @3 S$ s, R5 {+ P+ T) q6 m                        e.printStackTrace(System.err);
& ]$ ]& T( }% g$ t. ]" d                        //System.out.println(e);7 M: v/ T! o6 d! Z8 W
                        System.exit(1);
- R5 l# N4 N+ `' w                }
& ~/ ^( l9 z7 V- W) E  K: T" G3 ~5 w8 _

- @# s! L$ t) e& |! U7 @4 B# x        }0 ^+ U4 U; f( B' M/ }/ Z" p

8 g0 H1 I2 j$ T- {" J        private void swarmSetp() {
6 k7 `! P" U. O+ A                list.addLast(new Agent(Id));
. R/ u$ U7 y; u7 o) n/ c                Id++;
- E$ U6 O1 d9 ]        }: Y1 o& U4 S4 _  `
* R$ m; r, M5 T6 M1 J
        public Activity activateIn(Swarm context) {
- M& n- \5 ], ?  Q" I                super.activateIn(context);
2 B/ W7 z) _! k* z                schedule.activateIn(this);! T6 g6 X: E' f' K2 B) d
                return getActivity();  n; H6 o9 a  H# q# s. N
        }
: [% P. ?) S8 d$ E1 s( ~) k2 z8 n1 l1 L# x# R+ C7 j
        public static void main(String[] args) {$ c9 L3 d" Y3 d7 r8 x1 j* {; T* c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; E1 ?5 p! m' ^  P1 `4 N  y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% O2 P7 y8 a$ s  c% M5 `- O                swarms.buildObjects();# G  a9 b2 y7 `. k+ c0 X
                swarms.buildActions();% v% B3 q* Q# y& H5 _9 q% R
                swarms.activateIn(null).run();+ V1 t- @- v! n. F
        }8 q2 w& I3 N& {6 {. R
# u, [) r" ]/ S3 `+ B
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-21 04:54 , Processed in 0.026991 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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