设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7696|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 h* p; j- i5 m9 w# r7 i+ _7 P, j0 L2 L  U7 a+ w; j/ i7 I1 p: j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 L8 T& H$ e& {2 l- K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 N/ h. C8 c; g$ K  I* q  A7 lswarm.SignatureNotFoundException
8 ?' p! _6 a+ g) q        at swarm.Selector.<init>(Selector.java:76)0 K5 T. i, ?6 L2 {3 u6 d( W: L7 I) v( @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! r0 F" @: P/ B" E& z5 A7 q( ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67); J' p9 C  y) F1 [- E9 t9 g
& N; d9 i: ?' u) J7 r

0 I: o4 t0 n- Q* _! U; z- Y; Timport swarm.objectbase.SwarmImpl;' i2 Y: {$ q; Y) z
import swarm.objectbase.Swarm;% K5 }/ R7 `! u2 ~" i
import swarm.activity.ScheduleImpl;$ m) h8 v! ~( ?/ K. P% A: B! o
import swarm.activity.Activity;, g) ?0 y& E( f
import swarm.activity.ActionGroupImpl;
1 j1 i. Q8 I) s6 w2 x* `. [import swarm.collections.ListImpl;( _% c4 l5 F* V* Z
import swarm.defobj.Zone; 2 U1 y$ s+ F6 v' z
import swarm.Globals;/ Q* q  r) G  U, ~$ W
import swarm.Selector;
! P$ N$ N6 Y& iimport swarm.activity.ActionGroup; 6 m, h1 @0 ?, a" T
class Agent {
: ?7 s0 \  a* d- L        char id;
* i2 C6 {# a7 r, U8 O
0 y* B0 D. \) m/ h6 W2 G5 n        Agent(char id) {
0 P* ]# A2 p* x/ q                this.id = id;  ~/ o1 K9 ^8 X  \  I% e& Z
        }
9 F- E8 F& o9 G  o1 i* g2 [# K, }. l. I3 M
        public void agentStep() {* a+ G# B2 d) }# |/ u
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& F# y' a: }! _6 M        }
( V6 c) ^+ n1 {$ L6 }8 q' u/ ]}* _" O7 h( r& Z& ~, v

! }& g* x8 g: P, kpublic class ActionGroupDemo extends SwarmImpl {
3 A7 w6 V! p' V  U+ l$ [' n  x3 o        ScheduleImpl schedule;
0 _1 b3 Y; n1 u- ]& M9 H        ActionGroupImpl actionGroup;) z. h1 h: p4 p' H; a0 L
        ListImpl list;! E' N5 J9 L& D' n
        char Id = 'a';( c; i# |8 h7 [# N( W
' W+ d2 Q  ]) e* D! Q. @7 J$ {4 Y6 B
        ActionGroupDemo(Zone aZone) {
! r5 E/ \* j# |% L# T: ]3 D                super(aZone);! ?/ T9 ~8 \* I  {, ]
                list = new ListImpl(aZone);0 c+ S% i2 C- ~! d) {' w
                swarmSetp();
! W! T+ Q% k# S( I' X+ V& V                actionGroup = new ActionGroupImpl(aZone);
" f1 J/ |3 V/ H  h                schedule = new ScheduleImpl(aZone);- P& P$ C& K. y3 u# t2 t# Y
                try {
4 N5 r1 c3 m4 F7 g5 @1 }! c, s                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% a. A" q6 }% T2 D. ~, X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- S$ N/ k$ B, p                        
* C$ E$ O- P- t% ]& X& @                        actionGroup.createActionForEach$message(list, agentSel);7 D" ?7 c+ E5 H. b/ a
                        actionGroup.createActionTo$message(this, swarmSel);" d7 Y- J5 j+ i$ x' I% B
                        schedule.at$createAction(0, actionGroup);
$ ]# |: l$ p; u' D2 Z                        schedule.at$createAction(1, actionGroup);9 \; S" f; M( h% w5 p4 x' C2 c
                        schedule.at$createAction(2, actionGroup);
4 ]# \- W5 }& |2 U- Q
! v8 Y% }9 c  T3 R; x                } catch (Exception e) {
4 F% R: t0 I; k% Y                        e.printStackTrace(System.err);/ j: _  _0 J4 A- W! p
                        //System.out.println(e);
7 g1 j  A; ?( i. b( Q# _  g0 k% Z7 i                        System.exit(1);) ~. A+ _' ^/ |4 N3 Z; B
                }
1 V. z+ j' M  [/ S8 v/ k) b8 J  C$ V  l( \8 i6 Q

% k5 ]& C) T' f1 L+ |        }
& t9 R  ~1 [7 D, g2 _
% s3 H6 E+ o- t! D( z7 n2 Q& x& F        private void swarmSetp() {
' i" ]+ x/ e  r/ r" y+ I                list.addLast(new Agent(Id));0 u8 B$ `2 K5 B8 ^: |9 u
                Id++;, s$ `8 \; o! q& b. L/ C; k; Z
        }
4 l7 R. v. y2 z: v3 J" x( }+ ?( O. m" E& L$ }& S* t3 s  ?
        public Activity activateIn(Swarm context) {
& s: r& h) ]8 K/ D5 O                super.activateIn(context);
9 o3 T+ r0 ]: p                schedule.activateIn(this);
( J- e0 w" ]) W% ~: h                return getActivity();' R9 S# \3 v; a8 a9 y
        }; i( [& |" S& K. W% y* a5 x
+ O8 g1 K& V! `8 k
        public static void main(String[] args) {
8 f' N+ \% A  ~( f, q4 t  `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ i& \" M% e! F. ?, C- q3 f( k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 G" X2 q, t5 [* @- g$ @; G' k6 m
                swarms.buildObjects();
0 f0 m: Z! l+ \) ]# |! k/ h1 a                swarms.buildActions();. i% h4 x& y3 ?& ]
                swarms.activateIn(null).run();
% J" D' b7 q5 ?8 {- u# [$ r        }. u7 C2 d7 c$ L) I
; ]7 [% N, {; t! ?# @0 @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 18:45 , Processed in 0.014835 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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