设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5061|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 }7 C9 X+ Y9 [2 D- C9 u* T0 v2 T1 \9 q* d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  J' p9 B$ }. ^5 D' _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' ~* K) n' U1 W+ M* v& ~* G
swarm.SignatureNotFoundException
8 v. K( U2 n; b# @0 r        at swarm.Selector.<init>(Selector.java:76)
% T3 `( o5 k% j( i9 Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 m3 k& }$ I! b' e$ `        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 P6 V5 |) ^: Y

+ m4 B; M4 m; W3 L& g5 r  Y- _9 j$ O2 g" Q, I" f
import swarm.objectbase.SwarmImpl;: l$ n3 ?' f( _6 n: Y+ w
import swarm.objectbase.Swarm;7 L+ w1 [, K! k3 y9 Q
import swarm.activity.ScheduleImpl;
3 S: Y, t/ m$ |import swarm.activity.Activity;
0 ^! g  v$ v+ Y; ]2 Bimport swarm.activity.ActionGroupImpl;
3 A- w. M$ V: ^0 r: z0 _import swarm.collections.ListImpl;( O3 o2 l+ ~9 _6 U
import swarm.defobj.Zone;
' Z3 j: u; J  r  E% g: Y+ K$ u' ~import swarm.Globals;- b- w9 z: p  |2 I7 s, H
import swarm.Selector;8 U* G* v5 Q+ H0 J
import swarm.activity.ActionGroup;
6 d, l$ P  E! qclass Agent {. ~  c6 Q* ]/ i  I
        char id;% m5 }$ i. D; T) a

2 @8 s/ q+ S0 H7 F' K! _' j0 F6 n' O        Agent(char id) {
, S3 m% x# h" @& e  k                this.id = id;* s  i# i" T+ ]# v
        }' z* l  I: X- Z% U1 B  p0 K, w* t

7 \9 P$ o; m5 X( x        public void agentStep() {
$ n, b6 L6 b6 W# p                System.out.println(id + ":" + Globals.env.getCurrentTime());8 z0 U& u  ^! W7 A% U
        }
' z. B; W& f$ m# Z9 t! s1 d}
, X" c; J( T& \! z& g3 h
# Q; v7 |' P) R- Dpublic class ActionGroupDemo extends SwarmImpl {+ s' d' ]2 _" S4 p% E( {  I. o
        ScheduleImpl schedule;! r* V6 E& j' `) I  p; S5 _
        ActionGroupImpl actionGroup;1 u/ y% u& B" J  S, a# y# x
        ListImpl list;! o" o' I- a1 ~# Y+ R5 J) g
        char Id = 'a';
( y9 X9 D* H( q5 S! O$ h5 d$ p) b" t  L3 _( S
        ActionGroupDemo(Zone aZone) {
5 ~3 k. _$ s6 x6 k+ r. f                super(aZone);
" ^" E3 ?* a7 S3 c% g                list = new ListImpl(aZone);" G# b: v1 `/ f6 V9 P
                swarmSetp();/ {' J2 @/ y  R8 @& z
                actionGroup = new ActionGroupImpl(aZone);
2 \  O1 J9 A8 u7 y                schedule = new ScheduleImpl(aZone);
1 L, i0 \9 f1 u7 k0 X                try {: |) k7 N; T* C% I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- n- ]& U9 \& _0 O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 Y+ G) L3 A. H                        
9 n' f, m6 p, {- r' j1 n8 j                        actionGroup.createActionForEach$message(list, agentSel);
& M3 d/ U1 }6 Y8 C1 M                        actionGroup.createActionTo$message(this, swarmSel);
  }/ S7 X3 H9 a- a) Z$ p% T5 m                        schedule.at$createAction(0, actionGroup);
) Z! W* X* V* j# n; z3 o                        schedule.at$createAction(1, actionGroup);& a* e5 r/ h) D& Q; `# A
                        schedule.at$createAction(2, actionGroup);4 R4 `  h/ s1 S7 c% O, D) D- B; L
+ c' \. h" E, J* M2 m2 {
                } catch (Exception e) {
; p( `( a! c7 w0 A' U# v3 p# ^& N                        e.printStackTrace(System.err);
$ ~; c5 N* T' D, D5 c- G                        //System.out.println(e);
0 j! X' ?+ C7 ]/ n% ?9 i9 |$ n" e                        System.exit(1);
7 M3 @) \! ~5 i. I2 T- Y9 `, j                }
2 G  y2 C: C$ |8 g6 s8 D0 |' x3 t, ^* K0 J. p' D4 g/ r4 U: m: |
" ^- v, S: Y* U8 {( B
        }# A- B+ ?* T2 R0 U: h9 L

( O! s$ S3 @+ k0 G7 f2 T+ E! |5 \" z7 M        private void swarmSetp() {
! s" n2 z& o+ c8 K- R                list.addLast(new Agent(Id));
. }. H# r; H* ^5 R. H                Id++;5 l) }+ z  Y# D
        }3 f, u0 A8 y7 a3 P. z' ^
% t9 k7 [% E5 r8 s* ~2 }
        public Activity activateIn(Swarm context) {
$ d7 i* j& E& F& V' X  w6 w- x' ~* G                super.activateIn(context);
" N( D. O; C/ a0 i                schedule.activateIn(this);
- M0 d1 ]; h* i1 Q                return getActivity();
( ~& G; E: @1 v. M        }; h. {0 a5 ]8 ~0 k  E' I

; ]1 k. G0 h4 Y0 ?7 S        public static void main(String[] args) {- n, t1 C' M9 T# c3 k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ ~! y( x) o$ i8 e& |* N: v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ `! Q* v4 u9 m& x
                swarms.buildObjects();
/ `+ j/ Q' O* n  `: O4 F, `9 h4 e                swarms.buildActions();( i. A" U+ d" X8 \$ h! ~2 ^
                swarms.activateIn(null).run();
" O. X, d2 _/ {1 X, ~- D4 L        }
$ t( P$ I; @- O( `4 N9 B* N
: [6 F( l. ?& P9 U( S2 t/ t0 I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-23 13:02 , Processed in 0.019761 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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