设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11381|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : [5 R9 O3 y; B) _$ [
9 d! s" |1 \' T$ b/ m" p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  J, a- x3 p  N- \& c5 L# d& b" y: {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# w, g$ p% z. X* K" O( ~
swarm.SignatureNotFoundException: ]! ?; {3 K- O& U2 U( P  X
        at swarm.Selector.<init>(Selector.java:76)
3 J; ]* c, y- P# r1 B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 C; @9 X0 D1 B" [6 }; M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
& I7 \0 e5 z: U6 J& z4 c' c. o4 `% v1 C! c* L$ ]
* g- y8 j) V* F5 R1 C# a
import swarm.objectbase.SwarmImpl;
1 J, Y- ?% E9 ?import swarm.objectbase.Swarm;
" L6 e3 l5 k7 Y9 M, l6 y$ [3 vimport swarm.activity.ScheduleImpl;
2 b, s' w9 e5 D; `3 mimport swarm.activity.Activity;
2 {6 H7 x: o, h1 ~import swarm.activity.ActionGroupImpl;8 f" y. O6 w, o
import swarm.collections.ListImpl;
* P6 H% H8 |* j' y/ ^0 [& F9 eimport swarm.defobj.Zone; & S, @1 e) M7 x9 x* u
import swarm.Globals;" ^% E" c( o! g6 W
import swarm.Selector;, ]/ |; w0 q# ]; J- N
import swarm.activity.ActionGroup;
/ T: ~+ ^. c7 B& aclass Agent {
. C( g) H/ a) U% o$ P        char id;
7 u" Z, [& U8 V' _; |' c3 G, Z" q9 x# q" L( i/ E; H
        Agent(char id) {/ G9 ~" R. j6 ~9 W
                this.id = id;/ V% N2 h5 {2 T1 h6 V9 m  Y4 J, p
        }
. s5 r8 [$ t3 Q( e+ `5 z% M$ [7 }) H- N/ P6 h5 s
        public void agentStep() {  I/ q  c( C  x: d+ V3 Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 o- B1 X3 z+ h$ a7 Q$ L' s        }& |" P+ `$ M3 v1 W1 @$ N3 e. K6 _
}% F: l. i% [# |4 L0 G; L9 _% ]

& A5 ^( q- D" ^" Y3 W1 Spublic class ActionGroupDemo extends SwarmImpl {
* M: W+ y' J3 G3 d        ScheduleImpl schedule;
7 n% t: \6 ]( I, m- T, J" I" B' G4 ?        ActionGroupImpl actionGroup;/ f# s2 l2 M1 ^  i
        ListImpl list;0 N7 d- k% a' K
        char Id = 'a';
3 q* C# m- F+ B. S/ I! N& |8 s- G3 L* ~7 ]' l# Q3 L
        ActionGroupDemo(Zone aZone) {8 k; ]9 a  g& g3 `7 F
                super(aZone);# p: h' i6 K" x1 Q# e# |
                list = new ListImpl(aZone);6 V; y6 u# o& V3 q4 v
                swarmSetp();/ _9 E; d* p7 f6 Q
                actionGroup = new ActionGroupImpl(aZone);
& s5 l! D% ]$ E/ L  G  h7 d/ j                schedule = new ScheduleImpl(aZone);5 `: z/ P7 l/ H1 v5 k5 S1 d
                try {! E& ], W5 E1 w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 j, B* t- F' I4 \) ~
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 p2 L, A, Q7 @( v                        
7 s; f. ?7 D9 I. e/ |0 L$ t                        actionGroup.createActionForEach$message(list, agentSel);' g) r$ D# \/ i
                        actionGroup.createActionTo$message(this, swarmSel);
1 L! p0 u2 H1 a$ d1 H                        schedule.at$createAction(0, actionGroup);
3 j- r" D* B9 I7 i$ o8 p5 [                        schedule.at$createAction(1, actionGroup);
2 t8 B6 f) K: y4 x                        schedule.at$createAction(2, actionGroup);1 Q1 a* u  f& D$ K
, S4 t8 G+ ]- e1 q* z6 D
                } catch (Exception e) {2 H, s- R7 x' b" p' G
                        e.printStackTrace(System.err);2 J7 [+ Y5 [) l0 B1 Z4 v
                        //System.out.println(e);
2 M* ^! w8 h: x8 _                        System.exit(1);' d  W9 e  m9 }7 }: l' _
                }2 O# t1 m4 y6 s% {9 x2 |' ^
+ `" ]9 b/ R5 h7 k+ M8 N& }% y5 @

* R8 A' D  U& P+ X( Q7 Y' g9 t3 ^        }( o( ?4 I3 x2 A: u) I

( o( c2 _* ~( \# u+ Q( M; y        private void swarmSetp() {
2 `; G  X' v  T9 S% V                list.addLast(new Agent(Id));
8 J& }5 J: w) X1 S  W                Id++;
6 C* S1 `2 A1 J: [" w        }
( ]1 D5 p1 W, H* Y/ B. W' s5 {' ]2 B
        public Activity activateIn(Swarm context) {/ f" G5 `& h  d  w# N! S8 w6 x6 M9 c
                super.activateIn(context);6 ^. j- Q, Y  U
                schedule.activateIn(this);
; |; }2 Y. h1 i0 K                return getActivity();5 L( U- j9 _1 [; B* M% S% a. a
        }
: e; P) m9 B9 g: Y7 r; K2 ^/ B2 k/ g' o# v* Q/ M$ L7 t% ~+ Z/ Q
        public static void main(String[] args) {6 o: A) ?5 G/ p1 y, H/ k: S7 [) f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 ^1 I+ j& E6 Y. c% C" P  C4 I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# S% k9 g2 b5 z/ Q- a& {" }                swarms.buildObjects();
( }+ [" l: X' `, C                swarms.buildActions();
8 c9 Y+ J5 f& c  b( \                swarms.activateIn(null).run();1 u; w) u. q) C
        }
6 e, n; e2 F* q3 d# P2 z: I
- V" m% @+ P, x}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-11 01:49 , Processed in 0.013551 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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