设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4284|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   {* {1 R; _' {- k+ p2 H6 w7 c
& H- ^  f: b# N9 O, B. _- L* B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 Y5 Z& Z) h$ a  E1 a: w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. u6 V/ `5 ?) T% @swarm.SignatureNotFoundException
( j8 G8 t4 T! y! Q3 y; z. I3 f        at swarm.Selector.<init>(Selector.java:76)3 [9 a/ G8 ^5 j' q9 Y  V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- \8 j: U0 I0 T* N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* t' M5 k9 e" z* S; [5 Z
8 c+ h' l: r* v2 R9 h) D: w0 N6 e

( `7 \8 f' G4 v5 l; v9 Pimport swarm.objectbase.SwarmImpl;" t/ s. |  o1 P6 A
import swarm.objectbase.Swarm;$ o$ O2 v* _: ]$ e3 Q  h- q" t
import swarm.activity.ScheduleImpl;) A9 A# g# r3 y, D9 B
import swarm.activity.Activity;
2 c9 V5 A1 y9 ]) v( `import swarm.activity.ActionGroupImpl;
& w1 R$ g6 ^- Y0 b4 w) U2 Zimport swarm.collections.ListImpl;2 e0 O/ S- Q) n0 I! I- @. q6 l
import swarm.defobj.Zone;
1 }9 s" z2 J0 A; kimport swarm.Globals;& E4 E; P- q  e9 x! P# J# T3 ^7 d
import swarm.Selector;; u* m; V  S9 z/ V7 c
import swarm.activity.ActionGroup;
% h' ]' O/ w: d- d, |class Agent {
3 p9 _0 _0 o/ s; e9 T: E        char id;3 E' X$ c! x! }% B

) @) ?6 \; d+ K1 F8 j  E- A, v2 S        Agent(char id) {
/ |7 y" N& n2 O  ^8 H6 N+ \4 I                this.id = id;1 m! P- S. l3 o4 \* `
        }/ w9 o- d) I1 B- i& h* ?
" F, N- z4 r2 k% y* g( C; {- r' T3 P, E
        public void agentStep() {& |# D9 K+ c8 w* y! h1 x
                System.out.println(id + ":" + Globals.env.getCurrentTime());
! O8 r$ |3 h$ I+ d5 Q8 ?  {        }
; @" d  t$ p+ m  a* |}/ U8 X- j4 G( A- f5 J

0 i3 L4 Q7 G! U4 m+ @) ]/ Hpublic class ActionGroupDemo extends SwarmImpl {
" ]: P0 R# v2 n8 `9 q% M9 l/ B+ _' p        ScheduleImpl schedule;
" B- @: [5 n* q% ?* m7 ~        ActionGroupImpl actionGroup;
8 g7 @4 Z$ Z7 L) Z& @# S) [        ListImpl list;
+ `, E, P* X9 ^        char Id = 'a';
# V7 `6 J0 }. E' j% E9 a$ s4 X3 `- i! i, F) ^: b. W
        ActionGroupDemo(Zone aZone) {& D( w. J; @4 Y, U
                super(aZone);
0 w, h, E7 X7 w( {                list = new ListImpl(aZone);8 l4 R1 f: ?% T. m& h, n/ g
                swarmSetp();
5 |( @. I8 Q8 t: A8 ^: D                actionGroup = new ActionGroupImpl(aZone);1 v1 u! ]6 t$ F% m6 N9 c0 p8 F
                schedule = new ScheduleImpl(aZone);2 \5 Q' [- E# C$ H' s
                try {
! {0 z  d* J8 [1 K4 _  j  Q) X                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ m. M- q2 P4 r* n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ G. G1 t2 h) k1 `5 J                        
! t$ }& B# V) e3 d                        actionGroup.createActionForEach$message(list, agentSel);
& y; Z* R% }/ G5 d2 ]                        actionGroup.createActionTo$message(this, swarmSel);
9 N' v9 o: R2 @4 _: \8 j                        schedule.at$createAction(0, actionGroup);2 W; A* @8 V; l8 ]2 m7 _
                        schedule.at$createAction(1, actionGroup);
+ E) Z, ~% h2 U, D/ g                        schedule.at$createAction(2, actionGroup);
7 ]  C, T% i) @" N' _8 y- B& N: h* U$ h
                } catch (Exception e) {6 Q) m' _! Z! T
                        e.printStackTrace(System.err);
2 o9 n2 A! h$ u/ y* f                        //System.out.println(e);2 I, c9 s* X( a+ P: s+ M
                        System.exit(1);
4 E3 d! t: \/ }- K; M7 O                }+ Z3 u* o9 I0 T. A; u8 n4 v- B8 f4 ^
( e3 Z& J/ v- t1 K9 l

$ a* U; J& ~" \& r+ t- q9 g: g        }
/ F+ R8 ]" p0 x. X: K# t" O. ?  w0 ]
        private void swarmSetp() {
% Y) B5 C" d( _( P- |3 T                list.addLast(new Agent(Id));& X( f6 R/ @9 ~+ G
                Id++;0 x3 I, g. F- I  w8 T
        }% U% ?) U0 M6 P# K
, x. K( @4 V' B! i
        public Activity activateIn(Swarm context) {
4 Z: y# Z6 c  A* c' [, t                super.activateIn(context);
$ ?( J* U' `. g" t  w- X$ n                schedule.activateIn(this);1 ?2 q) _8 u/ G: x5 G
                return getActivity();& s" v, m! d6 P- `
        }' Y  s/ ]9 C$ T4 r! ]. D; K
- _, k  U7 ?& ?; g
        public static void main(String[] args) {2 F- @! I0 v+ ~! n7 E4 |: r' ]
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ A- l, @- R; E9 C8 z) _                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 s, M; u( ?9 d8 S
                swarms.buildObjects();
  M" n- l  `) w; B                swarms.buildActions();( I; z$ q( }1 w
                swarms.activateIn(null).run();6 |8 A% M. I1 \* N* p- R8 y
        }
) b) d! X5 _% F% v# ^& d# C
% J# K& [) }9 k9 }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-19 07:52 , Processed in 0.012543 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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