设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7141|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! X4 r7 |1 q/ K  Z) Q  a" W% K' h! Z% ^2 R0 C' N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 v/ o- j2 I" x4 T2 r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., m$ I. Q$ \) U7 X  g% \
swarm.SignatureNotFoundException$ w/ }4 e1 W- o$ k7 ?, z
        at swarm.Selector.<init>(Selector.java:76)$ t, n; T" J# D4 y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 t$ N1 d4 d2 \6 e9 r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 g& ~: f4 Q. Z: F- a& u: ~2 b3 i
$ d+ K' C6 z6 D% r% x

4 f% N- X; c1 e2 Q0 |  N7 a0 Oimport swarm.objectbase.SwarmImpl;1 E+ J% i8 y: ?
import swarm.objectbase.Swarm;% N4 ~8 h2 x; T. S* i- v
import swarm.activity.ScheduleImpl;% e& M% I  ?. ]
import swarm.activity.Activity;7 _! t: j" a: m# S* g  [5 @
import swarm.activity.ActionGroupImpl;
* P& M" G5 G5 Z6 I/ ]5 J. s$ Cimport swarm.collections.ListImpl;1 |4 O2 e, `5 R8 ^+ _3 ?5 y! x8 _
import swarm.defobj.Zone;
. k' V* V  c  W6 a+ vimport swarm.Globals;5 v) y+ u% f: E, \( o) @' H1 B( w' J
import swarm.Selector;
6 J3 u0 N' T2 }8 J  Himport swarm.activity.ActionGroup;
" M. X6 b0 L8 V% `. C" Iclass Agent {
$ O2 V4 {9 e6 K6 C        char id;
( M( P; b- m% z% {4 K0 J0 l% @  E# l4 c; u. s! [
        Agent(char id) {5 }2 L5 I4 g9 c1 i& y3 O
                this.id = id;
7 O6 [% F' n3 @5 A1 C* m5 b        }& W) @# b* o( z4 Q. Q

; w3 q8 W9 T% m* R% t        public void agentStep() {5 _. H! N5 f6 i& ^* `; d8 p
                System.out.println(id + ":" + Globals.env.getCurrentTime());6 N8 l) u0 n; k* K- m  j/ l
        }
5 P: R1 l3 S: m$ Z2 k- s}
0 ?/ S( W( j, o0 l$ v- y8 l! g2 D% d) c& V
public class ActionGroupDemo extends SwarmImpl {- R' N3 q& i; ]+ c6 M6 A/ X$ ^
        ScheduleImpl schedule;
9 l3 [& V  n4 ]& V) @- C1 h        ActionGroupImpl actionGroup;& x8 S% @! v( h9 x
        ListImpl list;
9 m) Z- i3 @* J4 k- E        char Id = 'a';
; W% ]2 i5 K' t5 B1 b! a6 u& D$ T: ^. E5 m# @" A$ r
        ActionGroupDemo(Zone aZone) {
/ U2 J9 Y# @7 l7 [# k0 F2 h                super(aZone);4 z/ o  G5 P" ?# i- }+ G# [' k1 H
                list = new ListImpl(aZone);
3 O* D. @% s+ W! W  \) Z( y! o+ z                swarmSetp();" Q7 ^+ ?+ c% s# r
                actionGroup = new ActionGroupImpl(aZone);
; Z1 O- |* z$ n/ @. V( b                schedule = new ScheduleImpl(aZone);
) M) Z; Y+ U5 _# v- K) g' q" f1 X                try {) Z5 X) H9 z) L! Z3 x2 V1 \8 {: w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( k! E/ L9 c4 K7 Q$ A* s2 x& |/ T/ F8 e                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% w% l* i) X; H7 |- G
                        
$ X/ I! }" K' W                        actionGroup.createActionForEach$message(list, agentSel);
) l: n2 i& _1 W) Q                        actionGroup.createActionTo$message(this, swarmSel);5 Z; E) A: W) G7 H, G" n
                        schedule.at$createAction(0, actionGroup);4 E% p- @) n5 `# n' E  p  Z' h4 _' {
                        schedule.at$createAction(1, actionGroup);) [2 [3 I0 f- q* Q
                        schedule.at$createAction(2, actionGroup);
% I* F0 L) E, U& m1 }+ e( F3 T+ m( d: N7 Q3 ^
                } catch (Exception e) {9 ~( q3 }2 C1 [/ R1 o; X
                        e.printStackTrace(System.err);
, p+ X5 ?% \0 `+ J                        //System.out.println(e);
9 z) o" A3 I2 V  O$ ]9 G% [                        System.exit(1);
& l' i* H& J# f) z2 f; `+ \- l                }
9 }6 T; N& O% s; U' Y' [0 }5 y& `$ I& I9 C: W; p
4 N* a& v7 |8 K# i) M' p3 z
        }
0 V: y& p" O* R2 E( u* |) P& Q) I% K4 y0 U
        private void swarmSetp() {
9 P: L% K+ w! g! q                list.addLast(new Agent(Id));
7 O1 r! n" a9 |; y4 u+ D                Id++;3 }4 t, H( l5 C8 {% g* U
        }. q( N5 N& l$ ^) C

8 s# I7 u; }+ }0 y        public Activity activateIn(Swarm context) {' G1 D9 b6 f5 D
                super.activateIn(context);2 D% V/ q1 ^' N: |+ r, m; e/ i) l& S
                schedule.activateIn(this);
4 m' @  {8 Q; O1 v8 I. F                return getActivity();: r& S+ w# a, h! y0 K$ Y5 h
        }! Q* \4 L2 W8 Q6 b
  K0 D, ]2 h3 O/ O5 g/ J6 c& |
        public static void main(String[] args) {0 E6 a& w+ }. @& D' i8 g" G  Q; ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 v4 A, d9 \+ L7 C: i
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: F4 ]& A- \$ ~& D. l8 z" d
                swarms.buildObjects();
: u  O7 f8 ]3 y: M                swarms.buildActions();
& Q9 e  r1 N; p2 j                swarms.activateIn(null).run();# T1 r6 l" M& o* @/ N$ k7 C+ ]; r
        }- S) ^& ?) l2 ?( a% H, [- F- ?2 X

( T) A) Z0 |8 Q: Q  t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 20:18 , Processed in 0.017436 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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