设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10887|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# h: I1 O0 p$ s& B) w% w# u3 B5 E3 a& r! q7 e& q1 G  D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, X# r/ E* c3 C) _, p6 e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; P& r& {6 H+ S0 L% D5 x
swarm.SignatureNotFoundException
1 z: e8 r9 q* Z5 ]# N; l        at swarm.Selector.<init>(Selector.java:76)- s  w2 O! Z$ O( [# K2 h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ~# S* p/ R' D: Q, I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 |& c% f* g5 T* ^* ^8 L1 C/ Y# F9 ]! k
3 ~+ |. B' Q' y+ g+ _8 [
import swarm.objectbase.SwarmImpl;; a5 @, W' s8 ?: x9 [5 L
import swarm.objectbase.Swarm;
# L' w' L; @6 B$ _. ?+ iimport swarm.activity.ScheduleImpl;% n) `3 i9 _/ a. ^8 n0 k( N
import swarm.activity.Activity;1 M: u1 l/ u- E- `- c
import swarm.activity.ActionGroupImpl;
. x- e4 ^& z% {+ yimport swarm.collections.ListImpl;
' D$ s& H) ~; F7 S" b/ |# _3 x- [) l+ eimport swarm.defobj.Zone;
7 K) E  x4 i# h7 L6 R, Rimport swarm.Globals;& N" `& a5 _2 k5 Z
import swarm.Selector;
: a' ?: g  v) r0 ^7 X' i; a( Rimport swarm.activity.ActionGroup; 6 f2 R; {( L- l6 v
class Agent {
' M* X; R2 Z: X5 a        char id;% J/ `3 T" s+ I8 [
5 G' R( D+ g. ~+ W9 u) n* u: A* h. N
        Agent(char id) {
" H0 X4 F& l, d- k& A2 T& T3 c% ?                this.id = id;3 P( [# B3 y! z2 O, q. H5 ^
        }; P; _2 C( U6 L

% J8 n4 t# a5 }$ ~, H' t        public void agentStep() {3 W2 H* c$ b4 A: F: Z! G+ j. D
                System.out.println(id + ":" + Globals.env.getCurrentTime());: R  z/ j$ n8 D0 v- a
        }' m2 R' g! Z* n0 @" D& v
}
# n  ]# t  i- R  ?
% x6 A# Q3 H. p0 g" Y- rpublic class ActionGroupDemo extends SwarmImpl {
& v  w! h, T3 j$ M        ScheduleImpl schedule;. ?/ @( V3 V9 K5 p3 x( Z$ B2 Z
        ActionGroupImpl actionGroup;
8 N6 x8 ]1 x1 u; J: h! i7 @        ListImpl list;
! |( f/ \; o% S9 l        char Id = 'a';: ~7 F# [5 |  k0 K* M: N9 f
! t2 y1 y& u1 W" c) ?
        ActionGroupDemo(Zone aZone) {
: c7 S1 i# ^; n& \! z; ~" p                super(aZone);& Z: J4 [. o) m$ A% D# @
                list = new ListImpl(aZone);. W( n* e2 O! ]# B
                swarmSetp();  b/ m7 S3 o- i
                actionGroup = new ActionGroupImpl(aZone);
" `/ J& d# y2 N6 u: Z, S* D                schedule = new ScheduleImpl(aZone);
$ ^* ?: C5 J# Y$ `5 f) c) h2 d                try {# R% a# p* ^8 {/ T
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! O2 S- O; S6 R& z0 Q
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 M. K$ Y: c& O, G+ Z: Z1 r
                        
9 O+ `, b4 ~4 w2 K) F+ S                        actionGroup.createActionForEach$message(list, agentSel);
  N* f' w7 T1 b                        actionGroup.createActionTo$message(this, swarmSel);- }# d0 O( m; f6 s4 B' n" c1 [
                        schedule.at$createAction(0, actionGroup);
3 z0 \- H+ w) b                        schedule.at$createAction(1, actionGroup);
5 }' m6 _7 H/ J( Q# h- J( w( E                        schedule.at$createAction(2, actionGroup);
9 z/ V* E# I* g7 a, v/ u
1 {( ~( m; }, N( w                } catch (Exception e) {
4 X1 _1 v" l& ~2 e% L                        e.printStackTrace(System.err);1 J/ Y/ r% b: L  b) A
                        //System.out.println(e);
( R" |/ w. [$ Q: n8 l9 T" }                        System.exit(1);4 C# H/ e: t. s) [3 n" H/ g. [
                }
4 h8 s& N& J. X) x0 L, B6 ^& r. D. D- H  I( W+ M. M7 Q
6 F9 N/ s6 Z2 W* ^+ w! J& O7 O5 d
        }
9 C* H5 q! X$ q0 e1 C4 k5 e7 }' z1 a4 l, [1 J; O) v3 \
        private void swarmSetp() {
" H! [: D2 P+ t+ O- g                list.addLast(new Agent(Id));
  Z. k% L% R$ C$ k: h' Y6 K                Id++;) t( }8 ^/ I% W) G4 \7 t, X
        }, E) }/ _; Q$ _% a1 b( y
; H( J8 E% E  x
        public Activity activateIn(Swarm context) {% f! d! N. ?1 ]" k
                super.activateIn(context);
: ], S! N  S& |. C                schedule.activateIn(this);% n1 N. Y. V5 p! h7 I
                return getActivity();( E$ K: K8 x; Z* \
        }
- k% @6 i. |6 v& Q2 A* U( I% T
$ ]1 i" s5 O+ z- B% {. ^        public static void main(String[] args) {0 \2 V* V( V! k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 b& U9 W2 J$ u: A$ q  `4 z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 q* a$ N; }# G- a1 {; i
                swarms.buildObjects();- A1 F5 a, m. F$ |7 W6 i. t
                swarms.buildActions();
% W/ ?0 N6 r3 U! z8 G7 b. J                swarms.activateIn(null).run();
4 B& g, R' D3 S/ S# j& w        }3 M: V( F" O) O: m
5 T6 [, ?: G% o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 15:37 , Processed in 0.017321 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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