设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9893|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 T8 A' P: \! x) O$ {- z

! u! u2 o- n3 z4 I' ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) l, t5 L' O- h7 |2 D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% ?9 z. A" t. T; j9 ^1 |
swarm.SignatureNotFoundException9 [2 |- R1 p0 a  Y
        at swarm.Selector.<init>(Selector.java:76)
. T5 I: a1 t3 I: \5 W4 V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ N. Z& n. W: |, K( O; T" `        at ActionGroupDemo.main(ActionGroupDemo.java:67)! y% V" V2 @! Q2 b7 T0 r( A2 N
  L* u5 X' x4 ]* z6 k9 P( B5 w

% B* k4 J) k' c" Z9 i' P9 b2 @  vimport swarm.objectbase.SwarmImpl;. M8 a3 f$ [, _2 `8 v
import swarm.objectbase.Swarm;( _5 p( c1 c6 L7 |
import swarm.activity.ScheduleImpl;+ u4 U' s& z  c
import swarm.activity.Activity;9 F: K4 L. Z5 d3 M$ u% X9 H1 J0 L
import swarm.activity.ActionGroupImpl;. Y* Y3 m* R" w. P% I& y- a. {
import swarm.collections.ListImpl;
8 ?6 }7 O- H! u$ ]; @import swarm.defobj.Zone;
% g+ a1 `" f/ Dimport swarm.Globals;
, N5 J5 A6 @9 u+ Y5 {; Y+ M, jimport swarm.Selector;, @1 f/ s- C1 Q; |- |
import swarm.activity.ActionGroup;
4 m( }% i  G& {0 x8 eclass Agent {; C  K6 q) r9 I, T- l8 {# J* [
        char id;( H* M- l, P9 W3 b( l
6 g. @- r2 ~# @4 n3 G5 Q
        Agent(char id) {
7 x% w& n" |2 m" d" ?                this.id = id;' M1 b2 N( m* o% N
        }8 c; Y$ Z3 x! D) S

5 V3 o: \" q1 C* W/ y8 d# C        public void agentStep() {+ p' D) q8 _) H9 N4 u4 R/ Q5 Z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 A2 {+ K0 U& ?/ X0 R. x        }
' ~+ @# q  |0 f; x& n}8 q& i1 ?9 T7 ]) T2 I1 ]/ e8 ?

* O9 ]1 r+ y$ {8 C3 Lpublic class ActionGroupDemo extends SwarmImpl {
6 K) \- l' G$ ~7 H, T        ScheduleImpl schedule;0 ]& u9 v/ H$ v- G! g7 @
        ActionGroupImpl actionGroup;" M5 R, U- P0 X3 C
        ListImpl list;* \2 G$ \5 Z5 E8 x1 w" q0 U
        char Id = 'a';
% v1 |# Y( R9 G' u# r- t7 u: J3 `
8 Z# \# g# \% r6 X0 J        ActionGroupDemo(Zone aZone) {
8 K$ `1 r1 O' L  g( Q* K                super(aZone);  {( V: B% q# s8 Z
                list = new ListImpl(aZone);
" T, N  G+ |/ ]  b6 o8 B                swarmSetp();% ^9 v; g; {) t( ]) v% M
                actionGroup = new ActionGroupImpl(aZone);6 Y% f3 @/ J9 S4 j4 j" i0 ]* J
                schedule = new ScheduleImpl(aZone);
+ K8 o  w% M- Z$ ~                try {* U# J+ L% v; j6 ]! J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  m0 I2 N  Z  Y7 ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! x7 X2 Y8 i; i1 O# Y                        
9 V2 C$ M8 {5 [0 K  L9 e                        actionGroup.createActionForEach$message(list, agentSel);
) X1 W" W4 |8 c4 c2 [0 w                        actionGroup.createActionTo$message(this, swarmSel);
9 A" I; h& I) |& A+ d) t) Y" c                        schedule.at$createAction(0, actionGroup);# I7 L3 w5 O% v0 w& y
                        schedule.at$createAction(1, actionGroup);
' I) Z9 O1 {- p: b3 W                        schedule.at$createAction(2, actionGroup);2 O' }" Z; y9 ?

$ R; `# y. v# P. R5 u                } catch (Exception e) {. [& X5 d0 b+ c
                        e.printStackTrace(System.err);. n  W! i1 d& R4 p
                        //System.out.println(e);: R7 f  E) M4 P6 x; E& Y6 M
                        System.exit(1);4 |& f, U; {2 \
                }3 w7 g' g0 J; ~& i4 S* \2 S
* n, O* @1 Q5 P3 |* G

5 z: B3 R1 M+ p' X        }; ]$ }1 @: l5 ~/ m

- I$ m9 \- M) E9 E* ^" V0 r        private void swarmSetp() {
' _( K( T0 L2 x9 F                list.addLast(new Agent(Id));
  z( f- A5 Z9 h; N                Id++;+ L& j/ L5 x6 P
        }
( Y+ b3 D" n) p# n: W3 B7 n; I
0 u, f/ X, Z" g4 N4 u        public Activity activateIn(Swarm context) {- R, @* h4 c6 T3 c+ w; l
                super.activateIn(context);
2 f% @. J, M8 @0 j2 ^                schedule.activateIn(this);! P9 E& I# J+ ~6 M( T, Q  t: A
                return getActivity();
% g6 J1 S5 b# I5 R$ W  i8 K8 _$ g6 j        }
0 O: o4 j7 d; I7 r- t1 y9 e3 o
3 a- e4 c( o  U        public static void main(String[] args) {, A- K' L+ [, O. L, s( P
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 ~  F' t6 u7 K' q" W. ?, W6 d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" a$ ]% @% i$ l0 j# o9 \                swarms.buildObjects();
0 J8 a8 b+ ^4 A& w                swarms.buildActions();4 F' m: d0 v3 k2 }2 e
                swarms.activateIn(null).run();) d' X# j) J0 K" {. P
        }
" `% g0 }6 X! z- }5 K6 g# {' o- D' j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-26 20:32 , Processed in 0.021819 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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