设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9289|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . o. l3 s; x; s9 B7 M

1 L7 |# V" y% Q! |: S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 d2 Z1 S! q# X* f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( |; A  U1 R3 ^
swarm.SignatureNotFoundException( n5 J7 p9 g" j" ]- Y2 N4 q8 o
        at swarm.Selector.<init>(Selector.java:76)" p; f& k% _: l, o9 |2 d, y5 O
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' J# Z9 @" O* `# }, `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 V& \3 K/ x3 ^
8 l2 T/ J( g! ?# Q% P% A
+ v$ e7 @  B1 A2 z3 y5 l& y
import swarm.objectbase.SwarmImpl;
/ R. a- C: f, qimport swarm.objectbase.Swarm;) L: I# R1 ]. o6 ~$ b: u6 ^
import swarm.activity.ScheduleImpl;
! ?* i* t' ]/ K2 Q8 w! p' nimport swarm.activity.Activity;
* d* O: m1 h0 C) ?import swarm.activity.ActionGroupImpl;) ]. W* R7 J% O1 T
import swarm.collections.ListImpl;0 l# h/ s; o, N/ a' I: K% a; W
import swarm.defobj.Zone; . [- ?1 \; t3 d: p4 A1 |
import swarm.Globals;
/ T; h5 ?7 B3 Vimport swarm.Selector;4 n& f! G; m' U% X
import swarm.activity.ActionGroup;
! J7 J3 X3 Q0 H; F+ ^class Agent {
* F5 D9 r3 K5 B7 w( p9 H# g# G        char id;/ P3 ~# \5 c7 b, l  d1 M
# H2 x9 x( i! z; p* t6 \" z
        Agent(char id) {" n5 A" ~2 i$ h- V! Q
                this.id = id;- d& n5 t0 d* I) i+ Z& x* z
        }6 G" G5 I1 c$ M7 J+ ?

# X/ {* N1 c* t, r0 ^        public void agentStep() {
8 \0 f) W) j6 u                System.out.println(id + ":" + Globals.env.getCurrentTime());% e" d8 N: f. J
        }/ N6 _& }" S5 Z% j$ H7 s
}
* I  M; A9 e6 t- ^/ k' x
, d3 A* ]! ~) }9 g) v6 ]2 Z/ Npublic class ActionGroupDemo extends SwarmImpl {
6 n4 T2 G) N; w  r; q! V" e+ r1 i; o        ScheduleImpl schedule;9 S( X. ^$ t4 c! D$ @
        ActionGroupImpl actionGroup;7 W. g7 H9 T. g
        ListImpl list;
. A0 D5 @0 j9 G: K% h        char Id = 'a';' u+ y0 @  ~5 P5 n: {6 F

0 w% z" Z0 K/ D' ^% c        ActionGroupDemo(Zone aZone) {
& O9 m" P7 Q* n% r6 }" l& r% \# e                super(aZone);, N( j5 i0 ?7 B- v1 ?( r
                list = new ListImpl(aZone);
3 p2 T) Q4 Q$ x( j                swarmSetp();/ v* r- d# b9 l2 ]
                actionGroup = new ActionGroupImpl(aZone);+ |/ o- I& V/ O3 |! P
                schedule = new ScheduleImpl(aZone);, A$ z0 b, _' ~: O4 |/ }8 m! a
                try {2 v( x) o; C1 E2 L  C& J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; |8 i8 G/ `# A; N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) T; h# f  X  M. d, D( G                        
. `3 Z6 f! ^5 W0 J9 F; u- k                        actionGroup.createActionForEach$message(list, agentSel);
1 b# {6 n  [7 K+ E6 s                        actionGroup.createActionTo$message(this, swarmSel);
# ^3 p7 Y$ T+ H/ G% t. y( t                        schedule.at$createAction(0, actionGroup);
- w' M/ G; M2 F" {                        schedule.at$createAction(1, actionGroup);4 G8 ^4 @0 j/ K' I5 z0 E
                        schedule.at$createAction(2, actionGroup);
0 n( G- e+ |) B9 }( q* P; I
' Y3 B9 G7 p$ v' U9 C                } catch (Exception e) {
" z; v  L. n6 O& y. Y' D, i2 }                        e.printStackTrace(System.err);$ o' G: w- A) z& D! n
                        //System.out.println(e);, U! Z) n1 C) [! k5 ^0 E. A- y3 R+ Y- W
                        System.exit(1);
! {! V% x# j  W0 y& I) u: q/ Q                }0 i0 ]7 b; ]! h3 ~
2 p9 l( K0 T% z& l
. Z& J, T9 o+ u- t" ~; j+ u
        }
  i4 [) I& A) `0 B2 {, Z7 T) p) M1 P8 M2 Q+ `
        private void swarmSetp() {7 e7 S5 |4 y+ P* y% v
                list.addLast(new Agent(Id));$ y' R0 o- n* }. f" `: _. |
                Id++;; N0 q, p* Z& ?4 ~" g# t
        }7 l" J+ e8 r. e% a
/ v' H  h: z" L/ K7 ]) s
        public Activity activateIn(Swarm context) {
, q( D2 ?9 ~! i0 z$ h                super.activateIn(context);
5 f: \3 f2 L8 c' ~' Z                schedule.activateIn(this);
9 r1 e6 l! Q! u% g* j5 ]                return getActivity();
0 x. M( \6 l7 P; a8 U) y: [; x        }9 p% m  D& F4 U1 J5 N% W
4 u- r+ V" B4 q$ q, t3 b2 q7 K' j
        public static void main(String[] args) {
! f& t! e, _( i# H8 J/ \+ H7 ]0 a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 {0 y: d0 b, v' v8 X2 [, {: [
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, k# }' C7 [" X, f                swarms.buildObjects();) _* m2 U- C2 X" a0 f& E" J1 v
                swarms.buildActions();& X' y( q3 G9 A/ z$ K; u' j2 L( N
                swarms.activateIn(null).run();
7 f7 A2 w- q( N        }
* ^/ K3 k. P" b1 z% i4 b9 n9 [. f: t# u  }/ _" k1 M: `) T5 O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-7 16:11 , Processed in 0.012856 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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