设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5919|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- x  N) G9 n' j. p+ I8 H1 X5 N# S# T5 g5 c( q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. ~, k+ O1 F, s! i9 A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ T9 X0 u) l. \# x. ?& c4 S' w
swarm.SignatureNotFoundException
9 ?7 P8 g8 B: k$ ?! L        at swarm.Selector.<init>(Selector.java:76); h4 }9 B0 {4 _( ?% J+ H( j9 w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 v! f; S" \! o  z' t; u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 U0 g' K7 G, D- z* _" d- h+ q' O7 q! [% O; G3 g' L& V

3 ]2 s  h. L7 iimport swarm.objectbase.SwarmImpl;
6 `0 H8 g) w1 uimport swarm.objectbase.Swarm;
& b. d1 u4 Y1 I# b3 cimport swarm.activity.ScheduleImpl;0 _2 o2 W4 V! @- D1 U6 B% E
import swarm.activity.Activity;
+ @3 s2 ^7 ^5 Q( Wimport swarm.activity.ActionGroupImpl;
$ ~. V$ c/ i3 T( G% |1 vimport swarm.collections.ListImpl;+ Q; S- r, k9 x
import swarm.defobj.Zone;
* L( ?- o; Z+ d/ k6 s3 {import swarm.Globals;
1 g% D* C; I7 {- Pimport swarm.Selector;
$ ^+ A  t8 z* N% W4 n% u  U. z% i) gimport swarm.activity.ActionGroup;
  J* F( }% W- }. G/ Xclass Agent {: [# G1 z+ b3 L! v! ?& ~+ W  Z, A
        char id;
& W: B* `9 z7 ]( N) a" o! q, h+ p: F( K% }2 M  T9 E1 d* y$ E
        Agent(char id) {: [% \1 Y2 O5 }* Q
                this.id = id;
. j) B; C( B) T+ z+ I        }
, q3 g% i" ?1 q: ]0 B5 q( B
5 w+ K/ D2 ]$ V; E2 a        public void agentStep() {
' Q& w1 w2 B( Z! v. [6 K9 |                System.out.println(id + ":" + Globals.env.getCurrentTime());( z# R5 ?( {7 m+ T9 y# o
        }1 i2 C3 [  p1 p3 w0 _+ o$ k
}
1 r1 F% `: B7 z+ X5 S# {& H2 x0 l( V/ ~: V5 I, t- p
public class ActionGroupDemo extends SwarmImpl {
" S- t4 x4 e) E        ScheduleImpl schedule;
( L5 s% F0 q" w, r3 Q        ActionGroupImpl actionGroup;* Q! [8 P) _) K1 M/ {
        ListImpl list;
% H3 r) ?8 B  q9 Y5 q5 Z7 ]        char Id = 'a';
8 k# g& X8 G" [, m
& w8 }. E# l. u1 k9 Z        ActionGroupDemo(Zone aZone) {7 I, T3 R5 @7 a- n
                super(aZone);6 D* ~( g0 [/ f  G
                list = new ListImpl(aZone);
- V% \0 W% q8 H- j4 G; A5 [                swarmSetp();
7 v3 f/ g0 I% L/ g) [& g                actionGroup = new ActionGroupImpl(aZone);
2 v# r4 E% p& \                schedule = new ScheduleImpl(aZone);6 S5 w. j# H6 H( J  P& E. W
                try {
6 ~+ p- b9 E& G3 k" x3 n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 ?1 V/ d! p& \4 D0 m" R) V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# [; w0 d; C3 e5 E5 `1 q                        ) c5 K% C; Z  |2 x
                        actionGroup.createActionForEach$message(list, agentSel);
9 c) l8 R; B! Q; ^% U2 X                        actionGroup.createActionTo$message(this, swarmSel);3 `6 K) f3 I. z4 y0 z
                        schedule.at$createAction(0, actionGroup);! r) m* T3 {5 _- m: _
                        schedule.at$createAction(1, actionGroup);
  R" E. o% D0 _# R3 D* O) }% A; N5 f                        schedule.at$createAction(2, actionGroup);
3 L) D( e" j/ w( M; X" K$ h( p
# N9 W6 d0 ?$ [& B' L  c. Y                } catch (Exception e) {
  _9 t, V% I- ]! x/ _9 }, g                        e.printStackTrace(System.err);
9 b* ]7 q$ ~3 R                        //System.out.println(e);
  Q2 I. F$ B; S; p) i4 S                        System.exit(1);
4 d. ?0 m6 _+ J) v' C8 t; {1 G                }* ~* ]# v* g* p! `. s% o
0 s* v2 o( b7 g: F

% |  s8 P' U) w! w        }
2 B  @: c' d, i8 _9 d1 G
5 L, m+ S+ C7 T7 h1 z! o$ ^        private void swarmSetp() {6 |- c& i4 x4 b4 T* ?
                list.addLast(new Agent(Id));& B! T2 J, _$ D# \# q
                Id++;
) T/ q" `4 V2 |5 C        }$ |( d+ w+ k! ^% r
% Y. C# f# Q2 {
        public Activity activateIn(Swarm context) {
& H8 u3 {! Z, y0 ]  O* F" f' p: X                super.activateIn(context);
" d6 I- k# K5 v6 t/ G( n( V                schedule.activateIn(this);7 y7 H/ c- L) o
                return getActivity();5 M, t7 Y0 u* F! F4 s
        }
: s1 m' J+ K7 ^2 e
! h: Y: Z2 h- L% G) h  a, d        public static void main(String[] args) {
1 V$ J, F. A! X, B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" H! ^' \. N& u3 o6 D. K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( J2 L" T' S. L+ o- G3 u' R                swarms.buildObjects();9 j0 \2 M* |/ b% ]! v
                swarms.buildActions();6 I) R/ z1 K1 B: k
                swarms.activateIn(null).run();
/ u0 f5 l# e# s8 [3 p( S        }
' E$ z1 Y  R7 ^6 E. ^/ |. k6 \1 l& t, q! B2 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-7 19:50 , Processed in 3.156870 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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