设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7577|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 ?9 N" ~( V5 l0 W2 s$ N. y) P& x/ \5 K' z7 X& Z. c; h1 H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) a- k* \. B* F/ @3 l; Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 {& j! l2 ^) p1 ]! l
swarm.SignatureNotFoundException: L. n1 z" c7 h  I8 G9 X6 i% H* m
        at swarm.Selector.<init>(Selector.java:76)2 _3 a: \4 T, `" |7 G: g) q) U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, e5 E: s9 p% ^9 b1 a: [4 T8 E        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ p/ [# w/ i4 Y
7 Y, H7 F- ]$ o; _) u
3 Z( O, D& n0 n4 K+ {$ }* Z5 d
import swarm.objectbase.SwarmImpl;
4 y8 h, T- B' eimport swarm.objectbase.Swarm;
7 r/ C) v& Y4 iimport swarm.activity.ScheduleImpl;
# B# x* |& \  U/ ]) c5 {  l4 J, [: rimport swarm.activity.Activity;
, F  R1 X  t( I# W0 S% oimport swarm.activity.ActionGroupImpl;  P$ f1 O3 M1 l! `1 r1 E5 Q
import swarm.collections.ListImpl;/ n9 H* N% U9 k, D+ k9 e% g' ~
import swarm.defobj.Zone;
! F7 n9 v$ f1 A0 P: mimport swarm.Globals;* F& A1 r; x4 f( |6 H
import swarm.Selector;
7 m8 C. Q% Q1 Limport swarm.activity.ActionGroup; 5 Y! F  C; g3 h; A* m5 m% Q/ C* O
class Agent {  }/ u4 R6 B3 M: t) d
        char id;0 Z& n. U3 E0 {/ {( v" u/ T4 E" h4 c
/ p1 x+ c7 g# \* Q0 x: a
        Agent(char id) {
  p/ k5 i! J0 h3 q                this.id = id;2 k1 K; F/ r+ k$ R/ C
        }! `9 v# W' }, k

" A2 F  g3 s) b0 {+ A        public void agentStep() {* U8 }% G( Z2 f" o  x$ T
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( `( W- @8 P3 b5 [4 `        }7 _) T( L$ y3 {! P4 j6 U
}. Y" Z. ~% G- h4 J& l

, B3 e2 z6 N" Kpublic class ActionGroupDemo extends SwarmImpl {9 X& B; W8 H+ P6 g% C- k
        ScheduleImpl schedule;6 H) C; j& |. V& W
        ActionGroupImpl actionGroup;
& h1 q2 j9 H6 |9 f& z4 O' u        ListImpl list;
& A1 m6 g+ [0 Q: e3 v7 M4 z        char Id = 'a';
! i0 @0 a; M) r" {7 P) M2 Y! E, h7 i* H. c
        ActionGroupDemo(Zone aZone) {% J! q2 B; R0 S4 {4 M9 t3 s! f
                super(aZone);
) S% U% O/ I4 W. t( D) j                list = new ListImpl(aZone);* g' }- M" z$ D$ J# n+ Q" N
                swarmSetp();3 z- K3 v8 |: L$ [: k
                actionGroup = new ActionGroupImpl(aZone);0 a5 i+ x$ D* |
                schedule = new ScheduleImpl(aZone);  D! H* H+ ~+ t
                try {9 ?! E. N2 N/ x
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 ~; p5 M) Y5 \                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' Y& Q( G1 z( k% S6 T                        
% T+ `/ |' l5 A# ]0 o  S/ h2 _                        actionGroup.createActionForEach$message(list, agentSel);
$ z+ T6 N% @" X1 j. O5 z( Y. p7 v                        actionGroup.createActionTo$message(this, swarmSel);* h2 l$ J! C- q/ c0 f6 Q$ n, Q
                        schedule.at$createAction(0, actionGroup);
1 U# Z3 z) h2 v# h                        schedule.at$createAction(1, actionGroup);
, m, f. C$ L" u% \; b7 F                        schedule.at$createAction(2, actionGroup);
# p  Y. L+ X. |6 @& D! ]
, v( ~" [3 Z7 l                } catch (Exception e) {
0 _  ?- ?( `% L: @$ @) l                        e.printStackTrace(System.err);+ J4 N5 \, R$ e9 a
                        //System.out.println(e);8 R+ }* O1 t% G" U
                        System.exit(1);
# V5 A- I' D2 b1 T& w0 ?                }9 S4 y) X) S$ W
% K, W# a* {5 L: }7 |6 y* X
$ J. g  x5 b' v0 l, k9 u
        }& w0 W0 y# Z& q$ W0 q1 u: P+ \2 |& w  ?
1 G" D: F, A9 w: L. x) g
        private void swarmSetp() {. P8 _  F2 K& O* e8 u
                list.addLast(new Agent(Id));
, c+ j0 ~0 a) `# R. Q                Id++;
+ t( I* v0 x, E/ v4 E) S        }% X% b6 T/ Z4 Z% N. J

; F/ {* ]  x# D3 `        public Activity activateIn(Swarm context) {
) I6 [/ J9 s) D+ S                super.activateIn(context);" }" q! J4 ~& u- r
                schedule.activateIn(this);
5 u% O" i& S, q$ E) x. I4 h; p                return getActivity();: l& x4 k# m; o0 @& `7 k0 V
        }
5 O& n1 m# Y- w7 i( i( w; R0 A$ ^, V
        public static void main(String[] args) {
# u' X! a( J5 P, n/ Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' i9 V. |* R; q6 X$ k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 b8 g; ~! D$ j8 z# H5 G- A) Q5 y5 U
                swarms.buildObjects();( a1 B- F& o8 t/ V/ ]1 k
                swarms.buildActions();
) T" F, G+ ^0 e9 x) a                swarms.activateIn(null).run();7 c2 w& M$ w; |$ J5 ~# U
        }
: I  ~4 ^0 Y! W3 E, `5 _4 f( t4 q. Y% C: C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-7 13:56 , Processed in 0.016298 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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