设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13494|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# T* K7 X  G$ M1 h. Q
( C/ a9 Q) F9 [$ k7 ?9 y! q2 l3 t本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: l5 X- c) H; [' h5 F5 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 g  f5 v2 G# G0 ]% y- ]' {1 l; M  a
swarm.SignatureNotFoundException
( O) p& C  m# H* {        at swarm.Selector.<init>(Selector.java:76)
; J4 k2 Z/ m' w) c! x" T1 H2 O        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; q" `2 |4 d9 D  s+ ]& M        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 x. I* y$ I% V) i( y( G  d

6 k8 {) g& ^' W( F8 g0 T9 ]' c2 Z" {9 l7 W' P; y" q
import swarm.objectbase.SwarmImpl;
6 o# [+ \; Z. L. t7 C$ T9 T0 ?import swarm.objectbase.Swarm;
0 c, l/ y5 A6 O* `$ }. G& gimport swarm.activity.ScheduleImpl;% d# y( w; [3 R* G) C
import swarm.activity.Activity;2 x- f9 N. S* l" d) x
import swarm.activity.ActionGroupImpl;
1 f9 t5 w0 @0 i/ D6 K. x, `import swarm.collections.ListImpl;; H8 o( W: Z1 m( p3 f) z" F4 E! B  _* e
import swarm.defobj.Zone; & E$ y/ r8 V& X) [; `8 `
import swarm.Globals;
* p; A% k2 M! limport swarm.Selector;. j& r5 Q! A( `& Z  v) }
import swarm.activity.ActionGroup;
1 x2 N9 k+ Y( C# I* g" U# Z( Oclass Agent {
9 Y; l0 q& B# v3 T0 B        char id;
( \. f. f; O6 v2 C; U0 s5 r; I$ m0 \
        Agent(char id) {6 ]- q# o+ q# t; Y1 g5 H
                this.id = id;
. H& w* Q0 b, b        }
9 [. \( k& |7 d+ {: Q# f
1 I; \3 n; L8 H: [3 Y% I+ F% B        public void agentStep() {2 Y' h' _) K, ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 e% ~+ x% V) v        }
  j6 O+ b; r4 @$ A2 o}6 P& X9 W8 F! B8 T
- V8 ?; ?+ _( Q
public class ActionGroupDemo extends SwarmImpl {
; `% t& k" Y# c) A4 V0 u' Q        ScheduleImpl schedule;1 Y, ^& h  o" T& ~* Y! O
        ActionGroupImpl actionGroup;0 C$ d' L+ s, p5 H7 G
        ListImpl list;0 O- n6 a& M* u+ G& Y- v  K
        char Id = 'a';
* A) Q$ r# N& L$ A6 |
' P3 p) r6 m* K; p0 ?) U        ActionGroupDemo(Zone aZone) {, w4 ?. s- }" f0 Q* r
                super(aZone);2 D# w( G5 ~/ d0 [
                list = new ListImpl(aZone);% O  U1 [# M0 A$ p+ ?. _( d, B4 z9 E
                swarmSetp();
0 O4 |$ x- P* I9 u( K                actionGroup = new ActionGroupImpl(aZone);
4 o6 z: r, W7 _! F                schedule = new ScheduleImpl(aZone);
1 }! h% Y4 r7 u' t- H; W                try {
- A+ d1 I$ z% S2 V0 ~: I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, {/ t- f0 Y; n( ~, O0 {7 b- I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; a: W# L+ R( c0 Z7 }( K                        
5 ]& c9 u6 N2 P                        actionGroup.createActionForEach$message(list, agentSel);
) |* N2 i) I8 q6 F' t                        actionGroup.createActionTo$message(this, swarmSel);0 P7 }5 ]0 D2 N* u* ]3 P- C, F8 f
                        schedule.at$createAction(0, actionGroup);8 B- }$ W! N) \3 v7 @1 G4 b
                        schedule.at$createAction(1, actionGroup);
- W0 F% H" d6 t, X+ R                        schedule.at$createAction(2, actionGroup);
' C, d4 F- r2 u7 _$ {* ~! _+ P1 _+ W' X
                } catch (Exception e) {
4 `' K1 k) s/ d5 f* N/ Y6 K# v                        e.printStackTrace(System.err);) e, j! j9 ^" m2 {% t) i( i5 Y
                        //System.out.println(e);
0 a# _( w% Q0 ~% f7 Z                        System.exit(1);: _' M; H) J0 X8 d9 v
                }, j% @/ T# O& n( D0 z
( i" H3 _% q5 l* x* U
+ V3 a1 }1 t4 y+ U; D2 h' c$ `
        }
& q7 o. x' O8 `5 I8 M
' }' p2 i! l2 T        private void swarmSetp() {
+ m7 X; ^5 d8 b' }( a$ s                list.addLast(new Agent(Id));
/ E1 R+ F% ^8 @2 P: t                Id++;1 v+ g% `% t! _1 m9 d
        }
4 S* f+ \* b/ S# V% J, p1 ]) v
        public Activity activateIn(Swarm context) {
4 o9 H" F% T  L$ P$ n8 U3 S% o                super.activateIn(context);0 \2 t% A4 L+ P' V
                schedule.activateIn(this);; _0 B" k7 g: K9 _; }: r
                return getActivity();
7 j: g$ b* y- m3 A! }2 X3 [. P        }( i' a# h* {8 d" S  t4 i) V

* [2 z6 H8 x2 p$ Y& j, x        public static void main(String[] args) {
! V* l5 I+ d5 Y& z/ J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 I+ O- r6 a. ~1 j* b! o3 A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 k5 o- J% ]1 k                swarms.buildObjects();
% g, |  O" N$ X  k3 W% F                swarms.buildActions();
5 o8 |0 N1 r* |2 p8 @7 V/ h                swarms.activateIn(null).run();
1 ?$ f9 y3 S3 B( |" S* K        }: b. i! A* u# Q# q3 G5 F. s
/ v/ @+ }9 v! v  u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-8 17:18 , Processed in 4.480567 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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