设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6774|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + o2 z" G% k  c/ X

( b' W# s4 r: s4 l) z# ]- r% d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- v6 r, e) s6 B, H) r+ o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ t7 C* ]8 R0 r' R" d% z& b
swarm.SignatureNotFoundException* ?: C' ^5 R: r0 l! R
        at swarm.Selector.<init>(Selector.java:76)
% e1 ?# R6 M& y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 G$ ]# e- n/ {/ V' n2 L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ k& f& T: {" T" o
0 @) B- B# I% }" `+ p" V+ O- n0 R9 g

8 Z" T, S  t3 ~0 k) ~import swarm.objectbase.SwarmImpl;
5 k7 Y0 F) P( B, I- P* Eimport swarm.objectbase.Swarm;7 k9 M, m9 H+ @+ A' |
import swarm.activity.ScheduleImpl;
& _7 [" h% ^% i2 h' {import swarm.activity.Activity;+ j* V% Z  @( U% ^; [) W- e
import swarm.activity.ActionGroupImpl;5 E8 E1 U4 c) `( B. E/ W0 l
import swarm.collections.ListImpl;" y8 R; r. J5 e- f4 x
import swarm.defobj.Zone; . t* ]9 I1 m7 T3 {
import swarm.Globals;
& u$ {6 u# U7 o+ r- @import swarm.Selector;5 l( \- `6 u: M, l" J9 F6 w
import swarm.activity.ActionGroup;
9 X3 }/ p! i) L0 J' s- f% p- {class Agent {- c; L9 L! a9 e1 F1 O+ I6 |
        char id;
: {- Y2 K5 b1 n, v+ J# Z5 D6 }6 C4 n9 {9 v( H' D# }% h& j) ~
        Agent(char id) {
6 U- U5 g! R, Q                this.id = id;
3 x4 M; C: i0 T' X) N4 z        }2 u5 B/ ^+ e) l2 u7 S( c

# h7 J8 f; K, ?9 m4 F' g        public void agentStep() {
" a+ r2 L) {) A! [# W! j                System.out.println(id + ":" + Globals.env.getCurrentTime());- V) U# u2 e% B7 {2 G
        }) C( G0 ?5 X% v9 s+ j
}7 H2 ^+ k' t- o. i2 @# Y
+ ?0 D9 g4 a& ^6 F$ Q
public class ActionGroupDemo extends SwarmImpl {5 u& J/ g  H( A! T3 a
        ScheduleImpl schedule;' c2 x% k# t  H4 S5 O
        ActionGroupImpl actionGroup;) S: _! G  a/ l) k
        ListImpl list;8 _" \+ |. L* E8 A7 P* ^  c' X
        char Id = 'a';/ ^" I" r/ r. |9 ^

2 b  v1 o8 o; B- @" I% ?5 n/ J        ActionGroupDemo(Zone aZone) {
5 E3 R* g, P  R7 u$ M/ g3 w1 H                super(aZone);
' j6 q$ B# p/ M) l                list = new ListImpl(aZone);
- }9 R  v1 h  ^, B% [' v: N                swarmSetp();% H6 D9 ]0 {6 h4 ^! n, P2 c
                actionGroup = new ActionGroupImpl(aZone);
( |( I9 r; c  O' X$ f2 M                schedule = new ScheduleImpl(aZone);
1 M- O" U. m6 ?% _' P: N5 J7 o4 b                try {
/ T5 I  h3 {3 w/ E& g$ _* y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; ^, y3 X- O  @0 f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. h/ S2 E/ W5 |8 l+ q                        # S! i# e9 M+ `5 Y: F2 W
                        actionGroup.createActionForEach$message(list, agentSel);
1 j9 k' Z9 R3 S8 k1 i" j# X; S                        actionGroup.createActionTo$message(this, swarmSel);
8 h. m; K5 P0 r1 z1 t                        schedule.at$createAction(0, actionGroup);7 }: q. c4 E, W) [+ c( c! ~1 M0 t% g4 ?
                        schedule.at$createAction(1, actionGroup);
3 n; l/ b* }7 I, x7 h7 C                        schedule.at$createAction(2, actionGroup);
4 _9 e6 d) j' i6 b8 C- {7 j2 i% X1 S; g* T) [6 P6 t9 {* R
                } catch (Exception e) {0 i; W  i# s$ X/ A! i& d$ g
                        e.printStackTrace(System.err);
6 z( e& G. `8 J                        //System.out.println(e);) [7 I0 C7 ^5 Q( l: W+ K% o# F& H& z
                        System.exit(1);7 O: Q. r  G* G7 L3 C  X
                }( I! H# o! g9 Y$ p7 L

1 o$ L8 b3 ^  u0 o9 I4 F+ [; C0 Z, N
        }
5 ], P+ i* c# x3 U
2 k( [6 h" \' \' C; I4 {        private void swarmSetp() {
+ `$ n8 W, `2 C  g) E) ?                list.addLast(new Agent(Id));
$ O; y# z+ c5 @3 f- B+ ?                Id++;* L; k7 H3 A% Y, R3 X
        }% B& [, ~) I) z
, K  P( W0 }: T# X
        public Activity activateIn(Swarm context) {
# P# I9 I* X6 c8 m9 E                super.activateIn(context);$ t) D8 `" b; ?  B! f+ R8 k
                schedule.activateIn(this);1 |! w( q1 b  m0 h+ h& |/ q% C8 T* p6 M
                return getActivity();
1 w2 }) t% R; j: e% \6 V# z. I+ g6 n        }
% z1 G+ V! W8 V3 X
1 }. A' K% s% K7 h        public static void main(String[] args) {% q/ I0 H) `' h. y4 ^/ {% \( Q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# L9 Y3 r+ h# G8 e8 Y2 `) R- Z; R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: `# y; R+ ^& ~
                swarms.buildObjects();4 Z9 b" }+ @$ C
                swarms.buildActions();; B: [1 J) ]* ?7 o. s  V1 S
                swarms.activateIn(null).run();
) p$ r0 ?; l% K% \9 f/ E% K( x        }3 T0 t! v$ J7 r+ |1 k
1 [: {0 d4 q3 t, l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-8 22:02 , Processed in 0.016652 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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