设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7341|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / H' I8 l7 N& O0 c4 J. ~4 _

8 Q  _3 v  d5 p. ^/ u; ]6 J' R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 U& s) P( X4 o3 z, j4 R6 u9 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 v+ j3 L. u# ]
swarm.SignatureNotFoundException
: @1 n& n, D: r' k- _1 E4 c2 S( W        at swarm.Selector.<init>(Selector.java:76)
; T% A& J6 m, w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ _$ F1 h) D5 p. z9 s. k- n$ m        at ActionGroupDemo.main(ActionGroupDemo.java:67)% @( C8 f  G' a5 g& {
* L4 [: Q+ C; K- n/ S+ ^- j
- [9 P; r2 j5 M9 r
import swarm.objectbase.SwarmImpl;! x4 F# E9 A6 I( @# X3 N
import swarm.objectbase.Swarm;
2 A" w9 m- `5 X. z9 @import swarm.activity.ScheduleImpl;8 C& T/ O' ~6 Z
import swarm.activity.Activity;
# N# l* v4 l; _% D+ fimport swarm.activity.ActionGroupImpl;. X1 ?+ K0 B3 u9 m5 Z+ N& t
import swarm.collections.ListImpl;: {( B9 _2 w$ c3 Q% m
import swarm.defobj.Zone; 8 V. i" [( u7 @" I" A
import swarm.Globals;1 _8 @0 M4 Y3 V% N# w. j
import swarm.Selector;9 A5 }0 Q$ _+ L8 N
import swarm.activity.ActionGroup; * X: s& {5 P" r+ m7 t6 t1 S: R
class Agent {5 `( b1 n9 }1 a4 n+ [( ?' G" ?
        char id;
0 I3 U' I! s# m; c7 n' p) I1 u  J( e, J" n  T7 {8 r
        Agent(char id) {
9 A$ x, ]* a. Q9 G                this.id = id;
0 L1 u7 H- O! ~4 e4 q        }
& V- s+ _: A# [( ^6 t  ^
) e+ x. c& y' X1 ^* _  j        public void agentStep() {
; h0 x, g( _0 O                System.out.println(id + ":" + Globals.env.getCurrentTime());. \3 V& t$ ^' m
        }/ n( h/ I$ S9 h& l
}; @7 T4 q. r- `3 o  I- d# W! ]

6 U4 ]  w# W' F9 ]public class ActionGroupDemo extends SwarmImpl {
9 L: ]* p# E- T0 W8 V8 K) Y) @* x* Y        ScheduleImpl schedule;
3 Q, G* O* f4 i- a+ a        ActionGroupImpl actionGroup;" W, q% |7 k- g9 s
        ListImpl list;
# A. _3 \3 f* X3 j' t        char Id = 'a';
2 N5 C$ V  J0 @/ k
1 L$ I1 K- S& I0 R        ActionGroupDemo(Zone aZone) {9 X0 T# B$ q9 g4 P
                super(aZone);% g  B9 B( @+ d' o# U
                list = new ListImpl(aZone);
- `; B3 R/ O$ H! M2 e6 E: F, v                swarmSetp();
, L* q6 `' x  w$ w0 G6 k                actionGroup = new ActionGroupImpl(aZone);
6 L6 y6 c& G9 ?$ n                schedule = new ScheduleImpl(aZone);) N9 A8 G) q" O2 i
                try {
1 J  @) [5 o/ Y7 v/ E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ E! i, `! R3 ^) F+ I( n3 Z" b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. U% i% O7 }& z+ F8 I. e                        - O# e# J/ n0 W/ x( G
                        actionGroup.createActionForEach$message(list, agentSel);9 d+ n/ M) I/ ~. s. \' z, S  M
                        actionGroup.createActionTo$message(this, swarmSel);
" e  |( \: E% r# Q6 n. ?                        schedule.at$createAction(0, actionGroup);  I, J% j+ w7 g. L/ p% W; }+ D3 i
                        schedule.at$createAction(1, actionGroup);
+ u( `0 o7 m$ P0 E9 i. {. d5 N4 {                        schedule.at$createAction(2, actionGroup);4 x" f2 m$ e1 k' J! V  c7 I
4 S. Y. H% H& Q6 L' `7 ?% L$ a
                } catch (Exception e) {
; b7 |) M& R5 Y) p4 @+ k* q                        e.printStackTrace(System.err);' _6 t: }6 M5 s. E; r! `. j
                        //System.out.println(e);
5 R  S' v3 X  y' p                        System.exit(1);* s- e4 E9 \/ ^! g4 U9 \
                }
9 s, j. ^% r5 M4 o( h" s1 U: m2 e( B2 _
2 f. ?! j8 [. @" x( k1 n. c
        }
9 ^" I) h* p9 {$ `$ M4 J$ {* p  e! \2 V
        private void swarmSetp() {
9 H* \8 t' P+ r! x3 v5 [                list.addLast(new Agent(Id));$ H  Q- b0 p' d4 n  s& q
                Id++;0 o3 {% d. }5 R0 C
        }( P# e1 t+ a) ]% Y, p4 F

% ~! W5 F( C( T9 Q. f* E        public Activity activateIn(Swarm context) {; J' Q  r0 D* k  C6 v/ D
                super.activateIn(context);
, P& \- o/ h4 T' u2 N                schedule.activateIn(this);
, I4 W9 Z% U/ k% @                return getActivity();
9 Z' }  ?9 p3 M- Y5 g- \( y! e        }8 P  [+ f+ y+ D& b

7 u* N0 w5 O# z4 a2 g        public static void main(String[] args) {
! m1 Y$ w- e9 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& e; @0 W) e$ d& p& C4 Y; Q" `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 s( _3 p. e8 e                swarms.buildObjects();7 m  D- W$ ?+ _* l; T0 ?. g- R9 h+ e/ ~
                swarms.buildActions();
8 P( F1 }( E* P2 [, v: p( q' Q                swarms.activateIn(null).run();6 W7 @9 M! \( Q
        }
7 Y* {0 r! |- ]; q9 T. z+ s1 F, K8 E: a# R% f
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-27 07:39 , Processed in 0.013894 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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