设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7623|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 h/ ~  S  A/ G2 Y& W! o8 a
4 p" b. J+ M2 h; S9 @1 x0 {  v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 H/ v- M  M' o* a, f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  M7 d( k8 L7 j! v3 L- O! R9 l9 l
swarm.SignatureNotFoundException
" M. k7 D/ M+ q: t7 D, e% P* b  A        at swarm.Selector.<init>(Selector.java:76)1 p( M9 K# v' |0 f
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% }% |- E0 Q1 h! W/ Q0 \
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 S1 O' E1 b* H# X
2 d6 x+ \- _& k- i% S& E7 v5 m& a5 ^( E" K
import swarm.objectbase.SwarmImpl;; t$ u' I8 q2 Q8 ]3 D
import swarm.objectbase.Swarm;
- s5 T/ a6 v. D: Wimport swarm.activity.ScheduleImpl;
" U! r$ N# U! _5 j) K& K1 o+ pimport swarm.activity.Activity;0 ~2 r9 K0 z" T5 s; F
import swarm.activity.ActionGroupImpl;+ J1 R: _$ }) f% m1 Q
import swarm.collections.ListImpl;
6 S: @: {+ f8 Ximport swarm.defobj.Zone; ! N& m3 P' W3 t9 S+ C9 _! X! t
import swarm.Globals;4 E' @- D, X9 b9 S# {$ x8 Q$ a
import swarm.Selector;! G2 A, e  E1 F$ W' w# Y
import swarm.activity.ActionGroup; , X$ T6 Q+ O2 d5 D! T
class Agent {4 G% b) R0 Y  R8 t
        char id;6 s* }/ Y! Z( Z& }5 g# ?

! S7 l* |4 _3 b- v* b$ G        Agent(char id) {) w7 d, H7 r/ e8 V) Y1 Y  l5 E% @. l
                this.id = id;/ [& o1 t8 R) D- Z' R$ ]* J! k
        }8 a) }5 C( ]' d) z! a( S. M5 j
  _' ~( b2 t9 g8 r4 U! H* b2 x
        public void agentStep() {
9 R' \8 l! l6 w$ `                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 O1 ?! N, J9 u) Q3 Z' ~. Z        }& J2 I( L% v7 A; Z$ m* J
}) Z# I' Y& n* e) K9 E

+ w" _0 H; O* R; d# m& Z5 hpublic class ActionGroupDemo extends SwarmImpl {4 N" @2 w6 R9 \5 E3 f; q
        ScheduleImpl schedule;
0 M% @$ \8 ~2 B5 O2 P$ Y        ActionGroupImpl actionGroup;
& N, s* X0 L" A8 b2 h4 O        ListImpl list;
7 @3 g8 f' n2 D) m' O$ ^        char Id = 'a';
9 n+ W$ k7 Y8 ^9 f+ ~2 V7 Z7 r1 N* K' i
        ActionGroupDemo(Zone aZone) {3 u! [3 V+ n0 Q7 j: D& M& {* }
                super(aZone);: H& H: t* y6 s/ A
                list = new ListImpl(aZone);; u+ P: X9 a; i: A' Q
                swarmSetp();$ S+ i: S! I$ G
                actionGroup = new ActionGroupImpl(aZone);8 a0 `) R# X0 O9 g& m, _
                schedule = new ScheduleImpl(aZone);
% y- j4 \$ @6 `  \2 Q# x                try {
" |; E. G( v5 N  k6 E  h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. P; ?8 ~8 H* U  l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" K  O  k" b* g1 F3 \
                          O0 n& M3 j% F
                        actionGroup.createActionForEach$message(list, agentSel);( T. c+ s9 L+ C, o0 E
                        actionGroup.createActionTo$message(this, swarmSel);
! G0 }7 F& h8 m0 m' S0 o                        schedule.at$createAction(0, actionGroup);+ I* C7 m6 c  o5 u. n
                        schedule.at$createAction(1, actionGroup);" q0 y, m  N2 j+ \6 y
                        schedule.at$createAction(2, actionGroup);: [+ c7 {4 O8 F* ^% N
) k9 I. ]: T6 j$ Q  }8 m9 c2 H
                } catch (Exception e) {/ o# A) ^4 D( P* ]3 d, K
                        e.printStackTrace(System.err);
* f! u2 s- j' \6 w                        //System.out.println(e);' U, b7 b* f0 H$ ?
                        System.exit(1);
5 A7 S$ G# c5 x/ M                }0 a+ u7 g6 w2 \$ c

2 L2 l+ t7 z1 Y; G2 N& q+ K0 ]& l$ r# \8 b( {( n
        }
* p; @- y$ Z& x' Y- O, w- o" Z( _9 E; }% _6 k. R( H. ~- ~. t1 q
        private void swarmSetp() {( D2 m9 t, b) w
                list.addLast(new Agent(Id));
  r# O5 F, _/ x, @1 r/ O% w2 w2 w                Id++;
1 Z2 E( Q# a4 t. Y+ r        }$ u; @7 o9 |! F$ j# ]- I; J

9 ~  c% R" U% z, V- r/ T        public Activity activateIn(Swarm context) {
$ T) }8 a) e" v- `$ S                super.activateIn(context);
" ]4 D3 N2 e# G- y* [                schedule.activateIn(this);
  D' s: t3 d! T                return getActivity();
8 M# x' F1 H3 s9 [, L        }
8 Y5 m  J6 ^9 O! f  @5 j7 O6 w# p3 D0 T  B- g# W
        public static void main(String[] args) {
! O8 E6 D" k9 c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ R+ A3 ~) r$ u1 @  J: ^3 f) r1 H0 n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: k- z3 r4 [9 F) ?5 y( V8 H                swarms.buildObjects();
& B6 P# K  V& c; z                swarms.buildActions();  e; c: O8 [) i. A, p
                swarms.activateIn(null).run();$ A  c1 j# w7 ~& O- E) Z3 _
        }7 H# ], l% l* d  t0 f/ n$ L- x$ }

* S' R- T$ [- ]/ a( ?}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-9 13:42 , Processed in 0.013461 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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