设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13832|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, n0 t4 }7 d3 u
. r" k4 a" W9 X$ K' E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( ~. ]: S# j) A" t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 M+ |& ]4 r0 N- y6 }
swarm.SignatureNotFoundException# h3 O3 O, p/ [  w4 M
        at swarm.Selector.<init>(Selector.java:76)( [3 j8 x- w& g5 U8 K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  c( j5 L5 a8 x, ^% [2 N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 B) J& p, ?: l* F# A
0 V4 ?3 h/ G5 a4 |

' a9 z* V2 ]) u# c' t/ g: pimport swarm.objectbase.SwarmImpl;& d; M, P1 F- E, V" S/ G& w
import swarm.objectbase.Swarm;
6 L; w# d% e! g/ I: bimport swarm.activity.ScheduleImpl;7 t8 x/ U" X8 l
import swarm.activity.Activity;
% e4 \' B6 N' limport swarm.activity.ActionGroupImpl;
# I% o. @! ]; y) nimport swarm.collections.ListImpl;
3 M% [# d; e5 e. g7 m  Yimport swarm.defobj.Zone;
0 J+ f, R- n6 V: @" f' pimport swarm.Globals;
+ W0 V+ W; D. P, o3 G! N6 `import swarm.Selector;
2 j( d5 i3 r. K+ t) w2 e+ D3 m3 {6 V4 _import swarm.activity.ActionGroup;
; q- H: l, v. q- O% `; Kclass Agent {7 D$ L. x& y+ K! t6 k' Q
        char id;2 W* B- `  E) v/ f
. w+ @% ]* b% D; C3 H; c7 ~( A
        Agent(char id) {+ b6 h8 s1 ^4 ?8 g- b6 o
                this.id = id;
+ G/ S, s! D" c- |& O( J        }  L, e7 O: s/ K5 v; T
& }* k' w7 q" L+ f& a
        public void agentStep() {
5 ?. p6 [* l7 m                System.out.println(id + ":" + Globals.env.getCurrentTime());5 l8 W/ f( L/ z( O) X# x
        }) J* D, H, Y: R1 a  x. [
}
: M8 Y- d" S8 |% }  j
9 N9 ~2 Y% N$ a8 t. ~public class ActionGroupDemo extends SwarmImpl {  b" o8 h8 y1 Z# g
        ScheduleImpl schedule;  c. n6 o2 W* h, G7 D
        ActionGroupImpl actionGroup;
  E! U8 D  _  d" q        ListImpl list;3 p/ e5 Y. W8 m( u9 a* }1 ^$ l6 ~
        char Id = 'a';
4 |2 |1 }0 ]' s, }3 ^1 t7 z: w- G& D* H$ f/ C" O, [* E1 H
        ActionGroupDemo(Zone aZone) {
, F! r& [: p9 c, Z! L% L: o                super(aZone);
) J- J' H3 r1 X                list = new ListImpl(aZone);
. D) g1 N9 w! j  G. R                swarmSetp();3 W8 F$ @; h( t- F7 \5 e; b
                actionGroup = new ActionGroupImpl(aZone);9 j  L% A/ b, W+ D- F3 C1 s  O* i
                schedule = new ScheduleImpl(aZone);7 F: q  I: V+ [7 X5 _! T
                try {, w. m  L5 @  @0 G( g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; F7 L! }6 A- s$ C! t+ w( E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) @, v6 _# C6 T( q
                        % s( m9 O) `1 O8 J
                        actionGroup.createActionForEach$message(list, agentSel);7 f0 S5 K! j/ \3 o" ^6 y
                        actionGroup.createActionTo$message(this, swarmSel);
) H5 a0 u- X% a  U! y. c9 f. d                        schedule.at$createAction(0, actionGroup);
, V& x0 _. P! N, s2 {+ }                        schedule.at$createAction(1, actionGroup);
  }' b  }4 l9 p% A/ j. F% E% b6 d- k                        schedule.at$createAction(2, actionGroup);5 c6 }) y/ l- h2 q9 J. k
! w5 B+ h" D, x" G, B
                } catch (Exception e) {
7 x* c, X6 J3 R* ]                        e.printStackTrace(System.err);  j% N7 Y& F. @& k# A
                        //System.out.println(e);- p7 H; }: G/ L8 x
                        System.exit(1);
- X" j# B6 d- ^( r  f8 E' X                }
# q* k' A$ V( ~' U0 o9 c: M/ u/ Z" g5 S' R
9 B9 b6 e3 K! x, d7 j1 ^8 h; n+ G
        }
  ^3 l. Z( D; l$ A$ x
. ?& Z8 o; l. i6 B% [) H% E        private void swarmSetp() {  l7 q7 \. y. b& C
                list.addLast(new Agent(Id));( Z. _0 x4 h% T3 V# o0 n7 [
                Id++;
8 C. g5 G* f' b* u2 r1 o; V        }8 U2 j% a& I/ f. n/ T- J- ]
: r: z5 g7 M- O6 i: W
        public Activity activateIn(Swarm context) {
, F( W5 d5 b/ y* ]                super.activateIn(context);+ A7 h4 X# a0 i
                schedule.activateIn(this);) C! ]1 D0 R0 F+ ~) ~1 F
                return getActivity();: X+ [. c9 O; x4 N. Y. Y+ z
        }, V/ g3 u$ p  c: l9 N, K  i8 w1 r! ^
' k& _; u3 l+ r9 X; o
        public static void main(String[] args) {) H' o. h# P! ~, e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- W: x; m$ M* A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 `5 A7 n9 j" V. T1 n# |0 j
                swarms.buildObjects();- e4 v; B$ \* a3 L7 I' A7 Y
                swarms.buildActions();
8 ^1 [4 Z4 \  t) i3 D                swarms.activateIn(null).run();
) e# |; [+ b7 V        }; J; w. t6 G% K; a5 {

- C# J8 h4 h0 M: z) L: t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 22:27 , Processed in 0.016394 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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