设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6944|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 _" @& H8 o4 h8 ^7 d: A

( X  t/ l- h6 c4 c1 X/ w/ B' O. {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* I( }- d9 i" H+ }6 ~9 j4 ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' J8 @0 s: s  Z8 s. F8 l' _swarm.SignatureNotFoundException7 O/ H, e/ u8 o2 ]' |- j
        at swarm.Selector.<init>(Selector.java:76)! M1 m/ p$ P7 `2 w+ ?% U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( K+ K# T3 ], l( z        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# P* m; C* q2 O3 [) r% T
$ X7 U0 }% B4 F; i' a5 j! K; n
4 h7 l7 z  K/ f. b9 \import swarm.objectbase.SwarmImpl;7 {3 A) F% {0 ?  [: w
import swarm.objectbase.Swarm;1 G. l- l7 k3 `  E. u8 [
import swarm.activity.ScheduleImpl;
8 F& ^: b: j4 Q1 C* [) o% Kimport swarm.activity.Activity;% O6 o; j8 R, H6 f9 ?/ \
import swarm.activity.ActionGroupImpl;0 q! h1 p" S0 H
import swarm.collections.ListImpl;
' [9 F+ z/ {9 j  N; [* Y6 U% aimport swarm.defobj.Zone; ! a  \3 ]4 y8 |# U' d
import swarm.Globals;
9 f) s( Y; a/ O% Y* O/ ~" p$ H) dimport swarm.Selector;
) T+ W1 c1 h7 T2 f! l# Cimport swarm.activity.ActionGroup;
8 Q$ T3 t' `+ ?6 h* y$ iclass Agent {3 X1 Z% a) a. l
        char id;
( S- X; \6 K0 J' z/ g
& W' s/ N1 P( ]3 ^6 i& a        Agent(char id) {3 ^6 y4 V0 m2 K, w1 K
                this.id = id;
% [$ H/ d. D) ^$ z  m8 r; `        }* {* h4 U8 y# p8 S- V

, x! J  _& q5 @+ m) H3 P. O        public void agentStep() {5 _- n+ X% U) }
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 i7 v# B) w) j, _( [9 S- @
        }% m( J( M& u+ m, |1 w( B
}
; y6 y0 t. T& g3 I; u; Z) [* _- f. D; e) \% Z, B- F7 d
public class ActionGroupDemo extends SwarmImpl {  Y! T7 l* S1 ~6 s1 i7 h: v1 I
        ScheduleImpl schedule;
4 b2 \2 B4 p. w; R7 K        ActionGroupImpl actionGroup;
/ V$ j  T; T% \6 ?& j( E# y7 ]        ListImpl list;* y5 d' q7 C8 |- B* V
        char Id = 'a';( p: X( m9 \5 q3 C6 z8 U  M! x
* D* c" X; Q8 V6 O/ ~
        ActionGroupDemo(Zone aZone) {
+ V8 ]' ]& x5 a" i. h                super(aZone);$ B% A9 f! b$ I' Y) R% O3 |
                list = new ListImpl(aZone);' z9 r5 T0 Z5 S
                swarmSetp();
8 v- J) B/ u9 I- d                actionGroup = new ActionGroupImpl(aZone);
" R* S& Z( j8 r4 w8 D& V                schedule = new ScheduleImpl(aZone);1 t4 I3 Y+ i/ V, j
                try {
0 Y2 x' |1 r3 W6 c- O  k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; b8 X5 Y+ G& s: \# a! ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' `7 X, p! e8 j" n% K; `5 v  T                        
; A6 W. ?1 o2 K9 K7 \9 ^                        actionGroup.createActionForEach$message(list, agentSel);* R% ]9 I) F; E& V
                        actionGroup.createActionTo$message(this, swarmSel);! D7 d; r4 Z8 Y
                        schedule.at$createAction(0, actionGroup);5 e9 N6 }- J! ]
                        schedule.at$createAction(1, actionGroup);
) a" ?9 ]) R3 a$ Z9 S2 F* _  L/ O6 C                        schedule.at$createAction(2, actionGroup);6 K, e4 P+ _% Q9 p4 q

$ B% d  f# C: [6 T                } catch (Exception e) {
1 }# L; U' [5 X7 }, a                        e.printStackTrace(System.err);
5 t# b' \7 T: ?' ^2 z7 F# _# a4 I                        //System.out.println(e);4 N$ `3 D5 I0 Q' U. X8 J5 C
                        System.exit(1);% N. a! B' _7 Y' d. ], t
                }
1 d: e/ a/ }( ~0 W, }6 D
+ v6 C/ X. A' Y, {6 W" [5 g+ p7 W2 m7 N. {: b" Y& A( _: R4 q
        }
: `5 g( R* y% y) \! Z' U! A6 c$ Z$ O3 V1 j' [$ S# l, V
        private void swarmSetp() {
" E/ g5 P1 F/ e, B, R                list.addLast(new Agent(Id));) A: {5 A6 X3 |; R6 l
                Id++;  ~3 b% B: _) M6 _
        }
& ?6 H6 g9 H7 n" `( a" s
" w# m; y+ a: Z; |# B6 n. s        public Activity activateIn(Swarm context) {
# R# ]. F9 @% ~: W                super.activateIn(context);
0 ]2 t/ ?6 [" D; J+ ~                schedule.activateIn(this);
' v) k4 y8 P' j$ n1 B                return getActivity();
3 l) F' T8 y# o  x; H/ A! m# b* I5 B: V( n        }& |% C+ s" j. B$ V1 Y% i8 w6 w$ K
2 L. H6 Y' R. I# V
        public static void main(String[] args) {. E8 V, ~0 z1 }: D# I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ y( L5 s5 `" S. g4 D& p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* C4 Y1 f& ^: M3 U7 e                swarms.buildObjects();
  Y) d3 ^2 ^! c3 A, ^  p* h  h8 e                swarms.buildActions();
( ]' F$ R( c7 _                swarms.activateIn(null).run();0 k& m9 @' U: x* c' v, X' c" a
        }( F5 t) t+ L0 `6 \
+ ?9 S  e7 Z- @4 X$ j% t- j; w- I- X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-14 06:39 , Processed in 0.014460 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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