设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6375|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 z4 x' t, U/ f! m

. F: \7 c; e2 R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' t3 |, x5 \$ V0 l. J+ f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." S* x. U$ W7 I3 Y
swarm.SignatureNotFoundException, a8 L4 \6 e: U. j. @3 R3 `
        at swarm.Selector.<init>(Selector.java:76)
* d7 k" r6 q3 m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 k( |1 x/ w& u/ o0 e% ]        at ActionGroupDemo.main(ActionGroupDemo.java:67)% y- u9 c+ b- \3 |! x0 k
% q6 F& l# o7 Y0 u. p! R
" o9 v  @3 X- O+ V. O
import swarm.objectbase.SwarmImpl;
/ o+ ]4 m, R* ]3 F# Pimport swarm.objectbase.Swarm;, |( i3 k- C+ ]& z0 \+ |3 b7 O
import swarm.activity.ScheduleImpl;! |4 |0 |. Z* R; u+ Z. \+ ~
import swarm.activity.Activity;6 W; Z7 h" S8 w; r
import swarm.activity.ActionGroupImpl;
; a9 ?' i3 f% o2 e$ C! \import swarm.collections.ListImpl;
' e  Z  _  r" w- V' O, M  u( ~6 [7 \import swarm.defobj.Zone; ) R) \6 O/ b; g& r
import swarm.Globals;  M- o, N' K0 f/ M
import swarm.Selector;
  g6 Z$ g3 k% c) Gimport swarm.activity.ActionGroup;
  w% [' A' |" w# I2 ]# S5 `2 Cclass Agent {" P8 q8 [  B9 t: P$ ?0 ~
        char id;: X3 u4 ]( d7 Q  h
, @. G# A8 j9 U9 `) n2 r+ k
        Agent(char id) {
+ t) }8 D8 L, e/ b- b, x  E                this.id = id;7 m7 G# d, l- y3 ]
        }
% h, U5 c) R% Z; d0 u/ J! e$ s9 j
! z  a% k( [' w( a' {        public void agentStep() {& I5 E+ I5 d: W  T# a! Y$ J
                System.out.println(id + ":" + Globals.env.getCurrentTime());0 k, q4 O( g5 |  L0 I* p* X% ]/ V# K
        }+ e, m( c$ x' M( F" P7 k( ~
}
+ m' Q5 W" ?3 n1 L$ ?9 h
6 p' W) V; }3 B' d+ L: o" u# _9 vpublic class ActionGroupDemo extends SwarmImpl {
$ E4 Y2 V9 o9 b. ~        ScheduleImpl schedule;
4 \) ^# e+ a5 Z" L/ e. r2 `& J        ActionGroupImpl actionGroup;% W: B* L. A' m, X  ?8 J( E
        ListImpl list;* J, h% f+ H1 O" S$ P9 x0 Z
        char Id = 'a';
( \+ O5 [  Q, l& W' d- C( ]. a! V) S& ?7 ^3 b, F8 B9 R( o
        ActionGroupDemo(Zone aZone) {
- a0 z/ R: t( }1 n& n* B- g                super(aZone);9 d+ L7 C( n+ M7 f0 U2 z/ U6 P
                list = new ListImpl(aZone);! g& b* M* k$ e$ v% j$ h7 C% m. N( `
                swarmSetp();
0 C5 X: j( @( `6 M! R. @' o                actionGroup = new ActionGroupImpl(aZone);
: K$ V% ]7 z( Q8 [# I3 K! e9 L                schedule = new ScheduleImpl(aZone);) f7 ^( _5 L9 q) R
                try {
4 r& @: ], b! Z, a- E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ A6 _, f$ i- K- r  Y1 y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 U5 v% N5 C( a' c% N                        
% J6 Z9 r) r5 O                        actionGroup.createActionForEach$message(list, agentSel);- ^6 t3 x# u; A0 |; J/ D7 p
                        actionGroup.createActionTo$message(this, swarmSel);. V# M7 f9 g5 g  A$ ~& u+ \
                        schedule.at$createAction(0, actionGroup);$ u5 L' L* V$ I
                        schedule.at$createAction(1, actionGroup);
1 T" F7 \( P' r4 w# A6 Y- y, U                        schedule.at$createAction(2, actionGroup);& E- q' r9 h# q! g2 F  e

3 x8 _- g$ X3 d% z' k/ j                } catch (Exception e) {
5 J: g3 R0 r2 x  `+ F                        e.printStackTrace(System.err);+ y, L- W+ s: g/ y4 T* z% W0 T& b+ O4 B
                        //System.out.println(e);: v, V7 x6 Q7 K! I3 Z1 O3 U
                        System.exit(1);
) ~. p2 z5 X$ `- O% r6 \                }. Z& V  {$ W2 x2 E& }- b! A/ m! H
" t. ?; t6 u6 i5 s- S$ V

6 Y2 \$ g9 t; \5 b& K1 P        }
7 y. h1 t  F) K5 J7 i% h3 w! x& m- y( ]% g7 w* o0 z( s
        private void swarmSetp() {
5 b, a! ?5 l: c" b. m* ~( ~) K                list.addLast(new Agent(Id));6 d0 ?5 h7 l* o$ H, I$ `$ z# M
                Id++;
5 i" Y( }, X1 e" i) s+ c- k        }2 ?7 `$ X' o0 q! v4 [: V
% S# x6 v$ F! D3 m" o) ^2 _
        public Activity activateIn(Swarm context) {
/ i/ Z$ X* m. I$ M6 G( E                super.activateIn(context);/ G% a2 u, A5 n$ a5 R" ]6 M
                schedule.activateIn(this);. l- {) H' F) b: v" x+ s5 x# N
                return getActivity();# g$ N( N' ~4 J
        }& B; K$ x" ]9 k: u, M

0 ?+ i5 k7 Z; l  u# P        public static void main(String[] args) {
3 U# u) a, c7 T3 M2 m& r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ u0 T2 F) X: I" H) b& w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  l& x0 b5 G; ?* q) b( |" i                swarms.buildObjects();: q+ I" n3 e5 f/ m
                swarms.buildActions();
& ^0 C. Q4 z( @                swarms.activateIn(null).run();4 |$ D4 R, M* E( j" [3 v, j
        }
, o6 t; a9 O7 P
# ~% S3 d9 f0 j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-26 22:16 , Processed in 0.022239 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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