设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6340|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: c: q6 V% m% j2 I1 `2 l7 C0 ^+ l% f! T! H1 K# u" P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ t* Z" G" k% E+ A; _  r7 S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." ]4 O8 O! Q! O
swarm.SignatureNotFoundException# J# V& b+ s  e2 t; V
        at swarm.Selector.<init>(Selector.java:76)
% u- r4 C- Q: n, m8 z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; L: n% ~, H% P* @" A9 L0 O        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% ~# Z: X- C" R. t0 s' l) w8 w; s0 ^" G5 I( m  ^
/ r2 @5 j, k: _. m# i
import swarm.objectbase.SwarmImpl;$ J5 Q7 z, @- [
import swarm.objectbase.Swarm;
$ u5 X" {% \3 q5 _. Eimport swarm.activity.ScheduleImpl;
/ Y- [" K) W- v) P; t* p; Simport swarm.activity.Activity;
& s* {. A! S1 B1 }; p" H4 g* Bimport swarm.activity.ActionGroupImpl;
( r7 H3 q/ q- V+ ~: w# x- Vimport swarm.collections.ListImpl;
# n3 v1 w# J( J, kimport swarm.defobj.Zone;   A' D8 O( {& b; b6 b$ X5 j; `
import swarm.Globals;
6 _3 a$ h7 O5 A$ C' k: jimport swarm.Selector;
8 f2 v" `) k7 z" Nimport swarm.activity.ActionGroup;
0 D5 a( f0 S' P% e( [class Agent {5 o1 k/ v% M8 `3 D- d" C0 q
        char id;+ ?8 ~( c# `, K$ [1 ?
7 ~4 z* B/ V1 ~
        Agent(char id) {
* k8 x0 c$ }* Y6 Y0 M! G                this.id = id;4 U* Q$ m6 _& B, N; @8 K- c. I: [
        }9 T/ J$ D9 W# d& b/ U, M% M  u
. I5 s4 B& P! T: h( q2 ~
        public void agentStep() {
* \2 l6 F; a* U( W& O, S, q. \. {5 i                System.out.println(id + ":" + Globals.env.getCurrentTime());. s% ?2 B+ N: ]+ j- K
        }
% r* p9 y4 g  v  G9 a. I}
' m& n! s# [( R* Q1 `
' x- ?4 k/ t+ E3 p1 Hpublic class ActionGroupDemo extends SwarmImpl {3 m9 h2 p$ a. p& u) C9 {. T# U4 x
        ScheduleImpl schedule;
8 _" F* F7 r* x2 {0 H: l( a        ActionGroupImpl actionGroup;$ o( y& {3 m0 g
        ListImpl list;6 d% J7 Z" A; {. q" a
        char Id = 'a';) j/ r! A& n# ?4 q
  }/ i9 C) V4 @; U  N7 ]+ c( v
        ActionGroupDemo(Zone aZone) {
6 `$ o: {* g! S4 N$ T                super(aZone);
7 s! E+ O) Y0 t, }3 V                list = new ListImpl(aZone);
* J- y! h& z& R5 Z( C( ^$ P. E4 m                swarmSetp();
- {9 V7 E+ \' G& S% X                actionGroup = new ActionGroupImpl(aZone);
! L4 i2 J% t5 g                schedule = new ScheduleImpl(aZone);( ?! _1 a5 d, @$ {2 k& V
                try {
0 F7 G* c% d% L& B. m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* {2 Y9 w0 n) g; ~9 k0 Q. }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 x% b. M! `; v. |* ?
                        " @8 {4 m, d- f* Z
                        actionGroup.createActionForEach$message(list, agentSel);
" [* V1 q) S" z. j/ _4 T7 F) a                        actionGroup.createActionTo$message(this, swarmSel);
3 X4 I4 M- _$ F. U% _1 e, g# b3 E9 D                        schedule.at$createAction(0, actionGroup);' k3 t  D: J8 M, A& |
                        schedule.at$createAction(1, actionGroup);6 Z; ?6 r7 O3 P4 _  A4 v
                        schedule.at$createAction(2, actionGroup);
4 y' {0 m* x0 f9 ?- w$ s2 _! `9 H9 W) d" B: R4 s2 z5 r
                } catch (Exception e) {9 M9 s3 g9 \4 t& f- K) Z
                        e.printStackTrace(System.err);, B% T1 {/ L% K* Q, {6 D. P
                        //System.out.println(e);* a5 `5 k$ q1 R" L
                        System.exit(1);% ~7 e3 E9 b1 r; s
                }! p/ R7 g. ]. q- E' a, {1 Z

  }2 d4 W* v# \  |0 d5 N$ N
- s  j! X2 k8 q- X' \2 b        }
/ D* U, h5 [3 U. ]( l% L- g5 K7 E+ z: J5 t% R
        private void swarmSetp() {4 f6 ?# J  P7 p6 p4 B0 r: S
                list.addLast(new Agent(Id));
1 u+ i2 I0 C; e3 _                Id++;1 M% x; l+ x4 k6 g. Y) w
        }. O# w' S$ |" L( L

: d1 n; k0 R6 D$ W2 o        public Activity activateIn(Swarm context) {  Y& N% _3 J! g, v7 T* I
                super.activateIn(context);0 ]+ [' d2 q- S7 {0 o
                schedule.activateIn(this);3 I% x4 V' [' I# L2 p) f1 p+ ~) k
                return getActivity();9 z. v6 z; U: i
        }2 E9 N. p2 [: n  M: r% s2 f% L- k( O2 T
5 u0 Q' X7 C, ~' T6 z" |1 S
        public static void main(String[] args) {
2 l+ |+ _" \* r& O7 F                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; k$ k" X0 c7 t& p* l1 U3 `
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ X% U4 g1 w! x! o
                swarms.buildObjects();
) Y) G4 @( o$ y3 J/ B1 \- M/ L                swarms.buildActions();2 u  Y8 l: Z7 G+ X; q4 G/ m
                swarms.activateIn(null).run();
+ r/ O- z+ p+ T        }0 ]- n: v  L% z! [! U
* n) [* y. R1 ]( F0 y  J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-25 20:11 , Processed in 0.024456 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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