设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6534|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " \$ ?, Y2 d. @$ q' _- w. A
! e  \7 n2 Q+ G4 ^8 a! y( n# H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, X, V9 R4 [; S- l+ z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ m2 x) ]" F! v1 b, l+ ]  i
swarm.SignatureNotFoundException
1 W) T6 K) |! v) z' v        at swarm.Selector.<init>(Selector.java:76)
/ t& O3 p/ j( P1 c) T        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 X/ t! D3 d# o! S3 z  K( k" \        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 G/ a+ P- I5 l" V% @! G: A$ S0 [
5 M  A5 x3 b; @7 M0 C4 ^
* ~& F4 z8 w8 i1 K# i  Simport swarm.objectbase.SwarmImpl;
3 d! z! e, Y% L7 X4 }+ E' @import swarm.objectbase.Swarm;
, A- J1 s  U' j6 H  Yimport swarm.activity.ScheduleImpl;" b$ @: ]; i# T& G" x3 X
import swarm.activity.Activity;) Q& {9 _# S& H; t8 B
import swarm.activity.ActionGroupImpl;5 v! D0 l+ A" O. F
import swarm.collections.ListImpl;
7 W  W9 x( P( `9 qimport swarm.defobj.Zone; - Z, @& |* D5 ~- O3 ]
import swarm.Globals;4 f! [$ G: q- c6 U
import swarm.Selector;( \9 ^8 G: y4 E& r4 r& [- p
import swarm.activity.ActionGroup;
3 ^  r$ q' K! j3 m7 Yclass Agent {. T: y- ]9 `: A0 i
        char id;
0 J  I! t+ q, {  M
4 w7 K$ @, O# @* w5 Q) H6 |$ c! b        Agent(char id) {
- U: x  V; H0 A# g/ Q3 p9 m                this.id = id;" Q/ x: z' l1 g) X* _5 N
        }
- y- t5 c' _7 V, D, a6 r. R7 d, j. F2 B' i  k& G3 @2 c7 `( B
        public void agentStep() {- I) I  j! a! g) @) k  Y9 `- ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 b0 R$ U! D9 G  u  I. |0 {7 N        }
* q7 \: @" L/ N, {6 f# p}
2 X, n' k8 r, A+ t9 Y/ @2 w+ J
* y5 g7 Q; {0 ?+ }- m  `5 zpublic class ActionGroupDemo extends SwarmImpl {# X0 k  P# v8 F* T4 J7 j/ n
        ScheduleImpl schedule;0 B- V! P6 `/ P4 Y8 u
        ActionGroupImpl actionGroup;0 @& D6 a. O8 P8 N5 ~
        ListImpl list;
( ]# k& X+ y6 q+ E1 E) x2 V  I        char Id = 'a';, ?' `7 F# _" C( S0 E2 o# A
( z! X' }3 f+ q  w! I
        ActionGroupDemo(Zone aZone) {
8 O7 Q- M# ]* Q# O7 w                super(aZone);5 _6 V8 B! ~" b! h
                list = new ListImpl(aZone);/ X3 K4 q3 j' q( Z% U
                swarmSetp();
; l0 g$ s; Z) s( [2 y, V                actionGroup = new ActionGroupImpl(aZone);# J. Z1 |4 \0 E5 P0 T
                schedule = new ScheduleImpl(aZone);
2 ^8 C; L& G! B* N                try {
# ~1 y% {( s1 f3 v/ E# T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 `% K7 k7 Z3 W/ {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) N* V6 W8 z1 s# |3 P1 ~( z                        2 s: b! w! O8 J5 i" P4 N/ P
                        actionGroup.createActionForEach$message(list, agentSel);
0 w( T4 i6 _; W& ^; \% x" J! _                        actionGroup.createActionTo$message(this, swarmSel);" e1 F4 y% u# v2 |
                        schedule.at$createAction(0, actionGroup);5 L  j+ g% j; E0 w  y6 a
                        schedule.at$createAction(1, actionGroup);2 P8 J) y$ T3 m: ]! @8 F2 K6 Z" R' Y
                        schedule.at$createAction(2, actionGroup);
2 H# ~( `$ R3 p1 o4 D0 I! t1 O9 _- Y
                } catch (Exception e) {+ {3 c6 Y! {! O/ N
                        e.printStackTrace(System.err);4 S( g9 W  n! ]8 o8 w( f; [
                        //System.out.println(e);2 j1 ]3 ]* k  B+ @+ r% J
                        System.exit(1);
1 Y; ]. F, Y( m                }" p) `' |3 i/ y$ U* t4 {. g

8 p+ J* C; g2 U
7 {7 p' z1 C1 }: t% ?  J7 q% h        }$ d7 Q+ S: i1 a$ d
5 y: L' e2 O2 q" C- o
        private void swarmSetp() {
: O/ h8 X6 ~; u% \                list.addLast(new Agent(Id));9 h) `+ t& z6 k9 Q; a) ~/ j
                Id++;5 g( Y7 o8 r- p  g2 r
        }
) k( i; d- O8 T/ r/ `5 n7 d( d
' b1 Y+ I3 x4 X. ^& [        public Activity activateIn(Swarm context) {
$ R0 [0 [$ y0 V+ t* {$ }4 J                super.activateIn(context);. g, w; m) u6 |0 O5 \
                schedule.activateIn(this);
, Z* I0 a# ]7 l" u- f/ L                return getActivity();% r3 f9 h, s/ R0 g1 S. O6 {
        }# z; D7 T1 f6 U

8 G" d6 ]) [8 U; M) [        public static void main(String[] args) {; P5 I0 R# X8 B- C( r) i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ Y$ J. m4 d9 X9 ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( i9 ~. U5 \* z) ^8 D; w* s0 S$ L
                swarms.buildObjects();
1 k0 }  g- {3 j1 {4 |% {2 ~                swarms.buildActions();4 v2 ~: v0 n; N0 J
                swarms.activateIn(null).run();
" t, P+ z  ]' G# n! R% N" |        }6 ~6 [4 J( X2 y
7 z2 P% ]- a2 I! S+ q3 @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 09:06 , Processed in 0.016029 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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