设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6537|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / G5 X9 T" w- u. o' c/ W
. p& d. E8 V) Z( `- T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! l! |/ `  }  d0 T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& z4 f8 H' v8 ]2 v2 R6 bswarm.SignatureNotFoundException
2 M2 Z  x$ W/ d  a. ]        at swarm.Selector.<init>(Selector.java:76)
. a8 @; Y: N- D2 E" E8 [) e, q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% X5 l* c. \6 |# _% O        at ActionGroupDemo.main(ActionGroupDemo.java:67)
& \6 M; q  |9 M% B9 X3 B& ]" A% u2 f3 h- H7 d
: Z/ |  N4 ]# T
import swarm.objectbase.SwarmImpl;5 z$ T5 ~! H, m
import swarm.objectbase.Swarm;
) B1 {9 v4 L. X2 |% y4 Rimport swarm.activity.ScheduleImpl;0 A- x2 p* l' ?" q
import swarm.activity.Activity;
* X% o- Y4 m$ [( Kimport swarm.activity.ActionGroupImpl;$ @! c  X, U' k. x7 L5 M
import swarm.collections.ListImpl;
5 s7 z: \: x( q8 R6 }% k  \import swarm.defobj.Zone; 3 s7 ?, G# T4 A. j: `* ]8 v
import swarm.Globals;
) U" s3 I# s+ Himport swarm.Selector;4 V" \2 H; D% f$ n1 K6 Y$ u; K
import swarm.activity.ActionGroup; & J# [3 ~6 p4 z
class Agent {
; W, o4 a" R8 v8 P  o5 T6 g! S        char id;
/ `) O$ b0 t4 {1 w% N" ^4 @2 y! C" h: H1 v- @
        Agent(char id) {4 [3 I0 O3 ]# w. k- B
                this.id = id;' F2 U# h6 i: F  s( A
        }. G% R% ]5 {8 H7 ~

2 x3 _7 ]9 [0 }" m3 D! x! C        public void agentStep() {+ T* ]$ T; c/ ]2 N- l8 r
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ L+ D, E. |# ?3 w% ~4 {
        }" j; B" ^: s" |2 H; i
}
& @8 n) [( [0 Y  p
  w8 L/ u5 l" c% o" z: ppublic class ActionGroupDemo extends SwarmImpl {  n* r* f* v/ V3 X
        ScheduleImpl schedule;" V8 L. W4 R: T$ h- t# h' q5 S( P
        ActionGroupImpl actionGroup;
) w0 l( p% ?% y6 o8 j  k- Z7 P        ListImpl list;: ]& Q  n$ h9 Q6 E
        char Id = 'a';/ g/ ]+ ?2 Y+ `0 |

2 L& R- _9 s% z7 T2 _* V/ p* _        ActionGroupDemo(Zone aZone) {9 b2 m9 |) F$ p" u0 R! ~
                super(aZone);6 y6 x5 ]  P& o' v% c$ ~
                list = new ListImpl(aZone);
. e5 ?) }$ K& k. ?+ ]  F                swarmSetp();
- j8 y, o1 D9 `; T7 I% p1 w                actionGroup = new ActionGroupImpl(aZone);
: I* Z# t) |- C4 A: T                schedule = new ScheduleImpl(aZone);- k% L  `6 p. w4 @0 u
                try {. ]& }6 T0 m+ ?" ^( f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 a/ Z" L$ x$ M4 q1 m! q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& q7 V4 y% O* M
                        
; ]; |; \$ K4 ?8 v# t% C                        actionGroup.createActionForEach$message(list, agentSel);5 e3 u" s4 k4 n: f6 ?4 [1 a5 f
                        actionGroup.createActionTo$message(this, swarmSel);8 X7 f5 k0 E/ Z! H7 o, j% b  R7 I
                        schedule.at$createAction(0, actionGroup);
; G- E" X7 u+ B                        schedule.at$createAction(1, actionGroup);
. x- b- d- Y* S  h9 `, p: \  {$ K                        schedule.at$createAction(2, actionGroup);
. c* f/ Y7 K8 [$ e0 w5 v2 |& x, g$ [$ H$ A
                } catch (Exception e) {6 E% J& _2 J- }7 h
                        e.printStackTrace(System.err);+ d, o* w: m, `3 C4 x, W& ?
                        //System.out.println(e);. a6 ]/ v% |$ }
                        System.exit(1);" C  [( Z8 f) B
                }
! r0 _$ k8 }- `$ u# Q6 o& s" B1 C' X$ |

, o6 }8 C2 r0 g/ ~4 w' p" j7 d        }
/ u( N9 L7 h7 X1 p4 [$ `8 N/ h+ f- b2 ?% T2 C1 G5 Y, o
        private void swarmSetp() {
  s. b$ B& S9 O                list.addLast(new Agent(Id));6 X. ~) m$ ]% i7 l2 k7 e
                Id++;2 V$ a* s# q+ r. L
        }8 V" i: H8 W6 J3 c! p
$ h: Z! D1 R$ M0 K" w. S* M
        public Activity activateIn(Swarm context) {  R0 T  p! j6 K) g( d
                super.activateIn(context);
7 F- m$ `3 W/ x: E9 X                schedule.activateIn(this);, G; h2 E. e6 v; y. f+ o$ R2 E
                return getActivity();
% B, W8 b- J/ k9 {+ \2 I9 Z( B        }, P. m5 z6 X% D) ^) ~

2 k% @1 C& T5 Q7 c$ T        public static void main(String[] args) {6 M6 c% |, c# Y1 Y; ]8 Q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, u7 S$ b2 q9 Y8 W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. L4 Q# T) U! r
                swarms.buildObjects();
8 g' l) i5 s4 G" z0 n% A8 U4 S                swarms.buildActions();
1 \; W" N. d, Q6 _6 h. M                swarms.activateIn(null).run();
! Z( Y* \. T% m        }- s- o9 o$ F% ]1 C/ \/ J
( M8 P$ N0 K0 D) p+ i# ~$ A4 D7 k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 13:10 , Processed in 0.022432 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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