对不起,可能的标题可能很差,但正如它所说的那样。我是Netty的新手,这是我第二次尝试通过网络解决方案来实现自己的目标。第一个解决方案直接java.nio UDP工作起来,但效率低下,比我所能忍受的慢。

我在启动时不断出现错误,找不到解决方案。该错误告诉我,io.netty.channel.udt.nio.nioudtprovider类中没有这样的字段会合。从Javadocs来看,这似乎指定了线程的作用。我想念一个罐子吗?发生了什么?我可以关于如何解决这个问题得到任何指导吗?

我正在使用Netty 4.0.0.1 CR1。这是我发现与示例一起使用的唯一版本。我的班级路径也有Barchart-udt-core-2.2.0,JSCH。

问题发生在我的服务器的主类(未命名为主)中。在以下行。

    final ThreadFactory connectionFactory=new UtilThreadFactory("connect");
    final ThreadFactory acceptFactory=new UtilThreadFactory("accept");
    final NioEventLoopGroup acceptGroup = new NioEventLoopGroup(1,acceptFactory,NioUdtProvider.MESSAGE_PROVIDER);
    final NioEventLoopGroup connectGroup=new NioEventLoopGroup(1,connectionFactory,NioUdtProvider.MESSAGE_PROVIDER);

更具体地说,误差发生在最后两行中。

使用MSGECHOSERVER示例和NetTyServer时,我会收到以下错误代码。

    Nov 07, 2013 5:07:53 PM netty.NettyServer main
    INFO: init
    Exception in thread "main" java.lang.NoSuchFieldError: RENDEZVOUS
      at io.netty.channel.udt.nio.NioUdtProvider.<clinit>(NioUdtProvider.java:68)
      at netty.NettyServer.run(NettyServer.java:103)
      at netty.NettyServer.main(NettyServer.java:191)

我试图找到一个包含这些定义的Netty 4X JAR,特别是完整的Netty版本,但会遇到相同或不同的错误。

我的utthreadFactory代码在下面,与 http://grepcode.com/file/repo1.maven.org/maven2/io.netty/netty/netty-example/4.0.0.cr1/io/netty/netty/example/example/example/echo/echo/echo/message/message/mmsgechosage/mmsgechoserver.java?ava?av= F

谢谢

litilthread

    package Netty;

    import java.util.concurrent.ThreadFactory;
    import java.util.concurrent.atomic.AtomicInteger;

    public class UtilThreadFactory implements ThreadFactory{

        private static final AtomicInteger counter=new AtomicInteger();

        private final String name;

        public UtilThreadFactory(final String name)
        {
       this.name=name;
        }

        public Thread newThread(final Runnable runnable)
        {
            return new Thread(runnable,name+'-'+counter.getAndIncrement());

        }


    }

*更新*我像要求一样升级,并获得完全相同的错误。我现在在我的路径中以罐子4.0.12和4.0.12的速度运行Netty 4.0.12。无论我有一个或其他罐子,都会发生同样的错误,并且我清除了日食缓存。 STS Spring工具中也会发生同样的问题。任何帮助都将受到赞赏。谢谢

有帮助吗?

解决方案

感谢您的所有帮助。在将所有罐子移到我的班级路径并阅读他们的内容之后,我发现了罪魁祸首。 UDT核心缺少一些东西,因为我显然有一些较旧的版本。我真的希望Wildfly/Netty的家伙能记录得更好一些。我下载了UDT核Jar,这解决了问题。最新的罐子很难找到。他们在 http://repo1.maven.org/maven2/com/barchart/udt/

其他提示

请升级到Netty4.0.122。final...您的版本很旧,我们在其中有UDT的工作示例。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top