设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13284|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ x7 V6 U+ I" |8 l# l/ j- t7 g8 }
( l7 C& o- s1 s1 j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( G7 [, w8 g1 w2 I6 S$ b1 J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; G1 @* O. w8 T" E4 P5 R5 e7 O& Z. \
swarm.SignatureNotFoundException
* X$ q! b2 y- N8 p, n        at swarm.Selector.<init>(Selector.java:76)
$ ^8 t8 z, a& u8 N0 f* _3 l7 ~" p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& u, @$ b" p# p" f/ _* o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# U3 F3 a" `3 r3 M3 |- H) D( d
0 a$ a7 b' x' |8 v6 L  E: O3 I( U. k- z
import swarm.objectbase.SwarmImpl;
8 L& i: I6 F2 U- |; i: o, I+ vimport swarm.objectbase.Swarm;$ v  e* g2 i( o4 v7 Q# S/ B8 c
import swarm.activity.ScheduleImpl;; c& T: Z/ g4 n% w
import swarm.activity.Activity;* d8 P+ g  ^6 g' |
import swarm.activity.ActionGroupImpl;" |# ?$ x! y& m9 X
import swarm.collections.ListImpl;
$ g8 s3 {# w( p! o, z" p& dimport swarm.defobj.Zone; ( ?5 [6 }- u& g% {' {5 Z$ C
import swarm.Globals;" d- [" f, K; S! N# R! P+ G
import swarm.Selector;3 f) o- m3 R3 t2 \" s5 U# O
import swarm.activity.ActionGroup;
% _* s: |) E. p; I5 y$ xclass Agent {2 z5 t" [1 B- u: D
        char id;+ T, k/ E: x" A# i0 z! S5 q+ ]0 a) e

# d0 C9 J0 j/ k, M% w6 @& h7 ^, ^        Agent(char id) {4 w4 }) H9 ?$ e0 z/ p
                this.id = id;: n) O8 n& T0 a" |/ j1 p" X% \
        }
% U$ Q3 P: }  p2 h7 Q, N1 D/ X7 ~8 _. L2 X1 j
        public void agentStep() {
( G, C+ m  `" o4 ~$ K0 h: ~                System.out.println(id + ":" + Globals.env.getCurrentTime());" [$ L7 i& T: o! e" K: ~% M- S
        }0 y& J' L0 [" T# N2 a- H/ j
}2 ^+ a! I& Q6 Z/ E3 K4 l. _

4 E' N7 P1 N2 l% L: }7 Hpublic class ActionGroupDemo extends SwarmImpl {  [2 `: ]# O* J6 a7 [- H( J
        ScheduleImpl schedule;
0 S7 s, R$ Q: v        ActionGroupImpl actionGroup;
* f5 L* O# F  ~4 y+ U* l: g        ListImpl list;) r+ B2 p  d( A' a& d6 J) Z
        char Id = 'a';
6 G2 d4 T+ g3 F* M1 b# i. t* P
% F( o3 m$ |) U. E/ t3 A/ R' L% d+ E/ B        ActionGroupDemo(Zone aZone) {
) [7 @/ J* d: v3 P                super(aZone);9 C2 T. }% G6 O/ o2 o7 ^! T3 V. f
                list = new ListImpl(aZone);
& n3 J! g, r5 {" M3 ]: ~. O                swarmSetp();/ d5 d! p5 ~/ y2 `
                actionGroup = new ActionGroupImpl(aZone);, d  R. G& j2 C1 J6 K9 N9 l
                schedule = new ScheduleImpl(aZone);! P5 U+ q* b+ {" G7 ^
                try {- A$ g& I; v  F! t( S. K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, H$ v8 w$ t' r. `# ~1 B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- g7 o( f. t' x: A/ ?! o* r                        ) {$ G( s3 |5 a2 J/ L
                        actionGroup.createActionForEach$message(list, agentSel);) m: ~9 Y' c% n" g, h0 y4 y
                        actionGroup.createActionTo$message(this, swarmSel);. G, J; @: f0 N1 o
                        schedule.at$createAction(0, actionGroup);, S- P* E( m2 A! m( i3 ~2 }; f
                        schedule.at$createAction(1, actionGroup);
* m9 k  D  ~- g; c: [                        schedule.at$createAction(2, actionGroup);; K" U+ z# `9 n6 |. W! _
; l2 m8 {3 E8 P
                } catch (Exception e) {' a+ ~4 o! [( j$ D
                        e.printStackTrace(System.err);
5 U( v; M0 c4 g8 X                        //System.out.println(e);
; @! E- i, ?9 H/ ^7 d  D                        System.exit(1);6 {6 A. @' E* t: k, S2 {6 h* _& j! P. c
                }1 T  M: Z- m0 S
: o- Y- R9 U2 @9 U7 B8 M3 |) X8 s

, r4 N4 P6 n$ ^0 N        }( y/ L: Y9 C/ p, [6 J
$ m, V0 m% g7 y
        private void swarmSetp() {
9 H9 N$ Z- o' r+ J                list.addLast(new Agent(Id));
; R0 Y: F5 h3 b1 g1 t5 h                Id++;& G7 v( M4 B  A6 ^8 h( c+ [4 u
        }
1 A) r9 j. n3 f( i6 Y1 V
  M' @6 P% N) g8 ]        public Activity activateIn(Swarm context) {
& h. |6 [9 @3 e" g: o8 b                super.activateIn(context);
. T3 E/ z: {) V+ t9 `% q# i# x  J" T                schedule.activateIn(this);
# m! j9 K3 e# Z# l1 F9 Z                return getActivity();( A8 i" w- o  M0 L% o
        }* O2 g$ O. w$ `- g( Z
# D+ V7 P! r. d4 Q5 I
        public static void main(String[] args) {0 f7 u4 [  \' K1 p$ M  w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 I( @9 B2 ~% q9 y4 G  m# s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% i& Y2 n( y( ?2 p% V                swarms.buildObjects();! V7 X2 u9 ^' ^* \
                swarms.buildActions();2 I& K0 p  n- Q* c# d
                swarms.activateIn(null).run();
6 R0 M9 v5 j& k5 s        }
  F# v$ ~, h2 t) n7 ], A. n
# `5 B5 e$ y9 N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 20:50 , Processed in 0.020864 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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