设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12352|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: H: @) X, x0 u2 |' y1 A5 e5 f* [, d+ @9 u- f/ ^4 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 q( m" Q- t' s+ \+ Q$ b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., V2 e: x; s  g3 w: _
swarm.SignatureNotFoundException
! N- \( C1 ^; N3 Y        at swarm.Selector.<init>(Selector.java:76)6 K6 _% ]: H5 [" }, U+ X
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 C3 C% O9 Y* [. B& a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ q- ^. q% k, z  \, q; S3 h' e! X& Z( I1 l3 U* `, r, E

  D4 z/ j! j8 Bimport swarm.objectbase.SwarmImpl;( V1 B+ N8 r$ P$ r8 O
import swarm.objectbase.Swarm;% `, L. z) t! O$ `
import swarm.activity.ScheduleImpl;
1 e" q& y8 d4 i! k  G5 zimport swarm.activity.Activity;5 H% J' R; N, T
import swarm.activity.ActionGroupImpl;0 b, ^3 }' I8 r6 j4 d4 O6 e. Z$ W
import swarm.collections.ListImpl;
; i' \2 F9 u  Y8 h, H  j0 oimport swarm.defobj.Zone;
" I. A1 {/ ?" |) m! rimport swarm.Globals;
! \, j) O1 V6 t2 {import swarm.Selector;
& E  G- I4 D1 {, e3 E. |import swarm.activity.ActionGroup;
% s4 a, X  L  N3 uclass Agent {! z& X+ v; n% Q! u& C+ \
        char id;; }* j$ H; [7 |! Z4 q; d/ r

; L1 H, l, {: b" i        Agent(char id) {
% ~& c9 o, G; _, J/ Q# s6 G, c9 \                this.id = id;& X/ S! t3 F0 I, Y( p0 T
        }0 R1 g* c. Q4 j, t0 b( C$ ~, B
# y0 D* ]8 R1 [3 w5 X
        public void agentStep() {
6 b# W' x+ y4 I+ T                System.out.println(id + ":" + Globals.env.getCurrentTime());1 d; h. _9 T  Z8 X, h
        }0 G) O' e  D6 M% Y4 z
}
5 H* x, }( Q! [: W8 |7 ]4 n( d( w4 y+ q
public class ActionGroupDemo extends SwarmImpl {
. ?6 E8 P+ r" w, c% J) I        ScheduleImpl schedule;
2 |; |, e, k. v        ActionGroupImpl actionGroup;( A- G9 a8 h, m7 O  I
        ListImpl list;
. W1 |. z+ t2 ^" B0 k        char Id = 'a';
! a% Q. Z: r7 D# t/ E6 X- Y( P; L9 X$ v1 _+ Q
        ActionGroupDemo(Zone aZone) {4 O. j- N- e' e( V! f2 K9 b
                super(aZone);5 }/ o- h2 g3 L4 x! I6 a% D
                list = new ListImpl(aZone);
$ G! Z" ?; D" z) G) U" d                swarmSetp();% f( t2 Z, E8 e- k, Q: I
                actionGroup = new ActionGroupImpl(aZone);/ Y/ K! T0 r, o! @
                schedule = new ScheduleImpl(aZone);
+ z" q  H: S/ s/ i: \( {                try {
) K7 y% a: b# p5 R7 a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- V% L% i9 h, k+ o  t8 H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 W* `! M$ o2 w; Y
                        
$ j$ V9 i3 P. v( S) Z                        actionGroup.createActionForEach$message(list, agentSel);
% ~: U% M: R! p7 G                        actionGroup.createActionTo$message(this, swarmSel);9 Z6 I3 v% T* O$ t
                        schedule.at$createAction(0, actionGroup);
7 M# \7 z+ i+ Y1 A, j" T                        schedule.at$createAction(1, actionGroup);
4 |3 X/ U9 V9 r" Y/ P                        schedule.at$createAction(2, actionGroup);
& ^* X0 R  a1 `' \( D* x# }8 J6 T1 o1 ~! d+ ]" a/ J
                } catch (Exception e) {# H0 N0 _  K+ l* O1 |; I: v: F# m$ ?2 e
                        e.printStackTrace(System.err);
% L% Y2 G/ @2 P* z                        //System.out.println(e);. J( g( m/ A3 C
                        System.exit(1);
4 {$ a( j' W2 Z" D. ^+ o                }% t5 Z& Y. S) Q9 C3 C! K: ?
' L6 x* E+ x' q  ~# h
" P; H% j! H0 G. s3 r. j  a! n9 ^3 s
        }% b+ z" K: D* {- q

( y, q' h3 J3 h        private void swarmSetp() {
5 x+ T" \" R& _6 K) V                list.addLast(new Agent(Id));
% v% Q3 ~# _7 m& p3 N                Id++;
( o1 [% E$ a0 C' l" o: u# \        }: L# |+ O0 s4 L, t# j9 ]
, \3 ?/ D0 z: h! z0 U) g
        public Activity activateIn(Swarm context) {
+ u6 u. j) J0 i* n: i0 a                super.activateIn(context);
' r; W7 s5 C, N* K" O2 E                schedule.activateIn(this);
/ h* {9 ?" B& E; r& t                return getActivity();. e% ?! M5 v) V. l& c7 ~) t0 E
        }* q3 \& x$ U5 y0 \
$ j; O$ i  D5 P
        public static void main(String[] args) {
3 f. s7 X' g$ r9 _; n3 f9 @2 a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% R, @8 @7 T* x
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- N1 v  m# }, q& g" u                swarms.buildObjects();
4 s9 r: h  }: n+ }3 i                swarms.buildActions();
. o7 `, m+ J7 m; l7 m- N                swarms.activateIn(null).run();
% o7 k' e' i# j# o& Z6 v/ a" ?/ p        }
, D1 ^/ G3 O  y" W
% F% X6 f0 G) d% I: Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 08:09 , Processed in 0.017410 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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