设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4842|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 Y* P& Z% i# Z+ t* W9 h  W& V' t7 A7 T+ R6 A! g3 S& g/ z8 m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 U) Q' b! |% J4 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 d) c; u' D. Q0 c  c( W
swarm.SignatureNotFoundException
$ B/ M7 Z; P4 l3 R; v+ G7 W        at swarm.Selector.<init>(Selector.java:76)& k/ S5 s, U' z: e: h4 _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% ~/ T5 m8 E8 `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 f- O; k& N) I' U
' D/ b3 v+ x4 G& S8 V( k+ V! P. R( d, w! N- Z
import swarm.objectbase.SwarmImpl;
/ B  ^2 y+ J! n( zimport swarm.objectbase.Swarm;
4 k# G9 y0 d- J* g2 @import swarm.activity.ScheduleImpl;5 K( ~2 P1 f! N9 i3 @- h, T' V
import swarm.activity.Activity;/ O& C% h# N# i
import swarm.activity.ActionGroupImpl;
' M. \7 ]' h! o$ C8 G( ]: Q0 B( _5 ]: Eimport swarm.collections.ListImpl;7 f7 N5 }- S; v5 L# [
import swarm.defobj.Zone; + X* ^; t( q( a3 y8 }4 k! B
import swarm.Globals;
' Q* l; g1 c9 F) Pimport swarm.Selector;5 y' s+ a5 J* J
import swarm.activity.ActionGroup;
: J: z# c) {+ f! \( S8 g9 Pclass Agent {) v2 j7 ~' d6 l! Z- d9 _7 _- r
        char id;
. x# d+ P, B7 z+ t2 I8 O
! _# z' \+ L; ~+ N1 I2 l& G        Agent(char id) {
! U8 V& G5 w* ~0 v) M% a                this.id = id;1 y2 q) b$ Q$ a8 q) @0 Q
        }
! s9 x9 w$ a, g' S) Y# Q* R
% D( F/ M+ j6 f. A7 H$ {, l2 t        public void agentStep() {
; z. |8 o" j. L& q6 R4 E) I                System.out.println(id + ":" + Globals.env.getCurrentTime());" H1 @& {/ m" |
        }. q. Q1 m# z. E6 ^4 W( v4 ^# Q: g6 B
}9 S$ _8 ]8 z- n+ r8 ?) O! {& C! W

. |( I4 B9 N$ w0 \6 `$ opublic class ActionGroupDemo extends SwarmImpl {- a4 Q& h$ s% [: X/ a0 r) ?1 D
        ScheduleImpl schedule;: m: |' V; y1 D
        ActionGroupImpl actionGroup;0 b$ @9 C8 F8 M4 ?, v% M9 \
        ListImpl list;
& w& v" w5 g; [2 N- L        char Id = 'a';
; c8 Z. P9 O+ o1 G4 I6 H* }. [3 B* t( F- }  w3 S# I% U
        ActionGroupDemo(Zone aZone) {
2 o9 @6 @0 g, J0 q( f0 b" \5 ]                super(aZone);$ x0 J: X  C9 t$ h! m0 a; i8 ~7 u
                list = new ListImpl(aZone);
! c. Q$ F! X9 E; a% E/ F& N( @                swarmSetp();
* X4 P3 T) j0 n/ t$ g                actionGroup = new ActionGroupImpl(aZone);, K. {% j: G* ]. [' N2 D2 ~# B, U
                schedule = new ScheduleImpl(aZone);
; L8 M" f* L" P& r% Y( S; T                try {& n# ^' \* k, f8 J+ W1 l4 O
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: J4 K; N/ t+ a3 x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 }% p5 i# A3 q2 W5 V                        
$ _! H% M3 y" X- ?7 d                        actionGroup.createActionForEach$message(list, agentSel);
; N& u. T# l) d                        actionGroup.createActionTo$message(this, swarmSel);
/ P. V9 C4 s( x9 a                        schedule.at$createAction(0, actionGroup);
) `/ C- `; K3 P8 h0 @% u/ c                        schedule.at$createAction(1, actionGroup);. r6 O, }( N$ E; A- ]: ?( U
                        schedule.at$createAction(2, actionGroup);/ c5 z& \* l1 p

7 G4 }; ?7 D. ~$ o% h# N                } catch (Exception e) {! h/ v; [. M. }# r3 F  L3 e. Q
                        e.printStackTrace(System.err);
" x( j2 Q# F4 t# n( O                        //System.out.println(e);+ G' r6 J* j5 F& g
                        System.exit(1);
' v3 f& q+ R' S2 y+ \                }+ x; a# m4 f9 }' q7 [
; [# u% i6 o" V! U" h) N

  _. e8 ?8 D+ `$ \2 o/ }        }
) b( C! z* H! `9 z) r9 v( |7 t5 N; g
        private void swarmSetp() {# M. G6 A1 R; F+ N( z
                list.addLast(new Agent(Id));
7 `% Z( Y  c( ~! r' ^& _                Id++;
9 |4 \2 C1 W$ {3 p* R7 I        }' r) z/ g5 R+ }4 y& ]
( V' E3 v# a5 d+ }3 X
        public Activity activateIn(Swarm context) {* c, j% K- U! C5 _- e( [
                super.activateIn(context);9 X/ _) a) \% a9 a) Z' q& s
                schedule.activateIn(this);
; K# E5 g" Y% z: F                return getActivity();9 p9 ^4 Z: G+ ~( K5 N; P  c' A
        }" D' ^3 s; V2 [. U' X( j

% Q4 f# g1 T* b        public static void main(String[] args) {
4 w. n1 f* q* y# M0 z7 `8 i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 p) |4 x* J* L- F/ \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 ^0 x( I$ N6 {) L+ j                swarms.buildObjects();
+ W  v: c1 P. X- g                swarms.buildActions();; q% g6 e4 n. R' B
                swarms.activateIn(null).run();% U' L3 r, C# F% i- F0 A
        }
+ x6 M: H$ l* L1 z* C5 l( M: C1 r! l  g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-14 09:40 , Processed in 0.014787 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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