设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13200|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 W( d1 q9 N" a" W4 s8 i: N
' f% H% x+ {$ K# P2 @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; |+ w! n9 S3 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ B5 b; M4 f, q+ Z7 u* E
swarm.SignatureNotFoundException" D! }. _0 j/ W0 B: Y0 H; M. t8 N
        at swarm.Selector.<init>(Selector.java:76)
% x3 W, r1 ^$ G0 N6 t# X7 U7 E+ `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" P. Q9 A& t' v& T5 m1 Z3 v( H        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 _# i+ a3 i4 x3 y# U0 `
% H9 `4 J) A$ X( A( p

4 l! D; B! k4 U& aimport swarm.objectbase.SwarmImpl;
+ ?" F" _- E! Y, U0 U9 ?9 Gimport swarm.objectbase.Swarm;3 g5 y2 h- Z+ j& v5 F7 \
import swarm.activity.ScheduleImpl;
$ X. `( r' w8 u. \$ T5 i8 W, zimport swarm.activity.Activity;) p- {7 m: P# c5 k1 Q+ F/ U# l
import swarm.activity.ActionGroupImpl;
7 G5 k; y" z& ?, J! U- ~( H/ zimport swarm.collections.ListImpl;
- T$ u8 C! _- ~! Wimport swarm.defobj.Zone; + c1 Y2 }1 }7 b
import swarm.Globals;
* a! a% v/ s- g1 Pimport swarm.Selector;
5 J+ S# G- U( [: @0 }) [5 f( dimport swarm.activity.ActionGroup; $ D) p7 a8 X3 d' R: q7 D* E9 @
class Agent {& C. V# X4 T" F( ~7 _" P' E+ f
        char id;
( i9 {% N5 ^9 _1 t1 p' g, D9 Y$ r
& c/ y, _3 U2 a5 L1 I& _9 T7 t' B        Agent(char id) {) U8 x7 V' u0 e5 H9 c; f$ N8 s
                this.id = id;
' s5 d0 @. f/ U- \        }8 ]+ M& J# Q/ l9 U

- T2 T# T/ k  g% s& X        public void agentStep() {
( x" |, j# z/ p, g7 w5 i' P' w                System.out.println(id + ":" + Globals.env.getCurrentTime());& Z- E8 h2 K3 q2 j( _' k* D; K
        }
# v6 R+ R3 P2 g4 k! t7 l& b  L' u" z}7 P  x9 H$ {8 m" W

, ?: b/ M& _" ^/ a0 ~public class ActionGroupDemo extends SwarmImpl {
& s% {1 ~2 E+ B6 c1 [4 \        ScheduleImpl schedule;! K# @9 r" H) k7 @. n
        ActionGroupImpl actionGroup;  E- q& \/ l( w1 L, P, ~: M" S  w
        ListImpl list;
9 f9 t0 o6 i! U' P% K        char Id = 'a';* v! h/ V8 j& {

( _5 s6 f) X- l        ActionGroupDemo(Zone aZone) {" E9 Q- `% X( K+ O
                super(aZone);) ~) I+ `0 q! h5 L. |
                list = new ListImpl(aZone);0 b7 Y( o5 K. O* C2 `/ N! E
                swarmSetp();) r, U- {9 E4 |3 E3 J
                actionGroup = new ActionGroupImpl(aZone);+ o5 r5 p2 B6 H
                schedule = new ScheduleImpl(aZone);# u2 y! n, L  g- ]" A
                try {
( F0 i$ L  g# M( D# k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 i- q7 [% Z1 t/ p1 ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; O1 n. S0 M, w0 P) ~8 q) f7 U
                        
. k  h, ?+ @, W0 S                        actionGroup.createActionForEach$message(list, agentSel);" `8 J' s+ r4 m6 q
                        actionGroup.createActionTo$message(this, swarmSel);  \" R$ c9 z2 _$ W1 u# [1 n2 Y$ u
                        schedule.at$createAction(0, actionGroup);' J" I1 s  b* i, z
                        schedule.at$createAction(1, actionGroup);6 M& h  e$ \' L
                        schedule.at$createAction(2, actionGroup);
" u! I6 n' S, d" D/ T$ D9 F" J
' C& O7 {6 E% D: ]7 K+ M" v, O                } catch (Exception e) {; X! R" B9 j: J: u, y3 m/ c
                        e.printStackTrace(System.err);2 S# G" h! Y. Y  ~- l
                        //System.out.println(e);
! N- Y: I1 L  F+ Z                        System.exit(1);
2 a: \  Z5 d( H  d                }7 a; ~. O" z" \+ J

1 _' c5 R0 j; ]5 q3 B' b. J0 D# [. C% M  i, C; j5 Z
        }. S$ \$ k/ L( b6 A& O. p

. G" `  d' E; ^9 S        private void swarmSetp() {
5 r' i4 y, }' }1 k- H1 P                list.addLast(new Agent(Id));# j/ l4 z* ^, e
                Id++;2 M+ c/ P- R8 n) ?6 R# F- F8 Q; z
        }& p! U9 M2 L  l& K+ W/ C
8 B/ X& T* I# _: i/ h  \6 q
        public Activity activateIn(Swarm context) {
* [# k% S6 H8 E4 Q  ?* u7 u2 k                super.activateIn(context);
& D' @1 X1 P  f' Z5 _! n                schedule.activateIn(this);+ j8 t9 E% e* f* M0 o3 H" k
                return getActivity();
* }; e5 @1 Z- K/ M4 x' u        }# R* Q3 Y$ P0 M8 `5 ?( x1 f( {
, k- F! B2 r; Z6 y6 n
        public static void main(String[] args) {$ Y* g8 k+ a: |* b& X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; @1 m9 R" n' x6 X! m7 A+ D                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! }9 v0 v+ \) W& T6 i
                swarms.buildObjects();
+ R# _# r4 d: \& D                swarms.buildActions();# D0 z9 l5 J3 B9 R, P  s1 u; G
                swarms.activateIn(null).run();# U& K( }8 l8 a% i% s; n. D
        }
  a7 n! Z  A. \3 ^0 O% n3 e3 S: B4 _' x* ~) \8 C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-31 08:23 , Processed in 0.014216 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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