设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12479|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( ^# ^, a4 W6 L

- h) g2 a& B) h- W% Q) V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 Q; y8 N4 k* A) a6 X  n( f4 K6 U0 o4 h' Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# A: x" {- Z: v1 \swarm.SignatureNotFoundException
! [0 O- C) a& x' B        at swarm.Selector.<init>(Selector.java:76)
. k6 z2 j) b0 N$ t5 @0 M& n1 f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" Z7 `# f& j) X        at ActionGroupDemo.main(ActionGroupDemo.java:67)) C( t/ B4 N) d: C, K- ^# e4 c  F6 V
5 i0 H+ \0 J6 S+ N! H

4 F* Q4 i8 k0 }9 t7 X/ q: iimport swarm.objectbase.SwarmImpl;5 e5 G$ T9 t# k& a( ~3 n
import swarm.objectbase.Swarm;7 r) L5 `) ~1 u5 k" h3 B
import swarm.activity.ScheduleImpl;
& `' Z9 o* E3 G0 F, W) A4 r1 x3 himport swarm.activity.Activity;, P+ s" B/ Y& g: }" `. k+ V
import swarm.activity.ActionGroupImpl;
6 ]$ F3 g2 a0 `/ Iimport swarm.collections.ListImpl;2 o8 a; D$ w3 _. C- f# K! ?
import swarm.defobj.Zone;
& s6 {" w5 r) B  U0 w: D5 Cimport swarm.Globals;. ~& a- q% E0 `+ k" y* I, A/ V
import swarm.Selector;
! A* ^$ q3 L" f3 w) s' Kimport swarm.activity.ActionGroup; 4 H4 \/ v3 f5 T
class Agent {% Q5 Z6 q6 F; y* s
        char id;
( w9 d) T! X* q' y+ k: J; q- k
) F4 ~; |: M8 {9 r1 d; U  S( k        Agent(char id) {& _% L. p3 ?9 V& W( ]6 N
                this.id = id;' Y$ ^8 e$ h8 v8 X; W
        }& z/ H8 u7 k. J7 M" N1 D

: j8 {# b: _" M' i4 y# @        public void agentStep() {5 _( X( K; h- c* w8 W" V9 R2 {
                System.out.println(id + ":" + Globals.env.getCurrentTime());% W& F6 ?) R& f" B
        }
* f) O  ?9 G9 @}
. m) n1 l- o% J% e" H4 S5 V. p6 `: _2 r! o- @
public class ActionGroupDemo extends SwarmImpl {% f8 s$ @- ^# Q2 g
        ScheduleImpl schedule;- t  r7 A: O7 T2 R% t+ d( I
        ActionGroupImpl actionGroup;
) a( X& r: A+ O        ListImpl list;
. L( V% p6 v$ `        char Id = 'a';
$ Y* I5 k  z8 \  Q( h7 U
5 g# f9 X& v" }1 j        ActionGroupDemo(Zone aZone) {
' r* T3 k% s  ?& V. s, T+ {1 s/ |                super(aZone);
/ V( D2 M  S- z8 Y+ ~) w1 j$ w                list = new ListImpl(aZone);
4 Q# _1 s4 J% D2 l" _( u- Z7 @/ w                swarmSetp();
8 M& u. i2 D; v5 l3 Q  J6 I# p7 D                actionGroup = new ActionGroupImpl(aZone);
; K4 W  C# S( V- x2 D! {3 ]                schedule = new ScheduleImpl(aZone);1 |) ]" t* \" g
                try {
4 Q) Q+ j/ z+ s                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. G; P8 Y$ u! k+ w: v
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 Q. e/ R3 ~, G6 m) s" ~( P8 q  x                        ; }% \& |3 X" f" X8 O1 _' U
                        actionGroup.createActionForEach$message(list, agentSel);
, w! \" M5 d$ e6 [  o6 b2 C0 F, R                        actionGroup.createActionTo$message(this, swarmSel);) L& J: {' R! [& ~& ]
                        schedule.at$createAction(0, actionGroup);
: a- U* l. f9 a  H& n! K                        schedule.at$createAction(1, actionGroup);+ Q, m$ `9 [8 I3 |' V8 p% n( `
                        schedule.at$createAction(2, actionGroup);5 [$ j# l7 \0 l$ D8 x  Y8 m

* l2 j, H, S  r; m2 u& y, P' _. E                } catch (Exception e) {
1 H$ X: q8 j3 w/ s                        e.printStackTrace(System.err);
) |8 L9 f! p4 M' C2 B& Y                        //System.out.println(e);
- r( Z0 l/ A: P9 f4 i                        System.exit(1);# N2 }% a4 w4 H! w9 z, P
                }
$ H4 O7 l8 K7 {, a8 m, U+ h) `, V7 p- O* H: f& c  L% ~
6 ], ~3 V( {  Z3 ~! u
        }
$ A4 v- |3 l& U: [1 r
+ k. q6 K+ I. R        private void swarmSetp() {
/ C$ P2 ~7 A) x' E! X                list.addLast(new Agent(Id));
5 g8 c' e$ x$ ~0 D; P" _                Id++;
9 O- }' ^& k  F* d( e4 g! K& a        }
. M. O& a( X, a4 x) I' O7 @" @0 l! D; `. b. p! e5 Z
        public Activity activateIn(Swarm context) {* y; D3 j0 v; A2 r) \# Q
                super.activateIn(context);( R+ A( W( R, N- U) u1 u$ D9 B
                schedule.activateIn(this);
( i" H8 X3 ?! u/ c8 [                return getActivity();
, b8 j. W( m% a: k, V        }% x: r- g8 c  T6 X0 g

9 I8 Z: U2 H% d6 M  V7 y; b1 o" z        public static void main(String[] args) {
& a3 d: g- k: }: J, S4 P, ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 V2 M/ Y6 b( N. ~( R+ T5 u2 ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# X- r3 x$ u& i2 d, C
                swarms.buildObjects();# s4 \8 B( p& U- n& {2 G
                swarms.buildActions();
4 k2 W' }- G: u! r7 D                swarms.activateIn(null).run();
7 p* B) Q. M$ J        }  g" S, ]5 ^5 n( d0 I
3 a1 P' a/ i7 q8 U
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-9 21:14 , Processed in 0.017901 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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