gpt4 book ai didi

java - Netty NIO Udt 尝试给出错误,我无法在文档中找到答案

转载 作者:行者123 更新时间:2023-12-01 13:52:43 24 4
gpt4 key购买 nike

很抱歉标题可能不好,但它确实如它所说。我是 Netty 新手,这是我第二次尝试网络解决方案来实现我正在尝试做的事情。第一个解决方案直接 java.nio UDP 可以工作,但效率低下,而且速度比我能忍受的要慢。

我在启动时不断收到错误消息,但找不到解决方案。该错误告诉我,io.netty.channel.udt.nio.NioUdtProvider 类中没有这样的字段 Rendezvous。从 javadocs 看来,这指定了线程的作用。我缺一个 jar 吗?发生了什么?我可以获得有关如何解决此问题的任何指示吗?

我使用的是 Netty 4.0.0.1 CR1。这是我发现的唯一适用于示例的版本。我的类路径中还有 barchart-udt-core-2.2.0 和 jsch 。

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

    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 版本,但得到相同或不同的错误。

我的 UtilThreadFactory 代码如下,与 http://grepcode.com/file/repo1.maven.org/maven2/io.netty/netty-example/4.0.0.CR1/io/netty/example/udt/echo/message/MsgEchoServer.java?av=f 几乎相同

谢谢

实用线程

    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());

}


}

*更新*我按照要求升级并得到完全相同的错误。我现在正在运行 Netty 4.0.12,路径中包含 jars 4.0.12 和 4.0.12-FINAL。无论我有一个还是其他 jar,并且我清除了 eclipse 缓存,都会发生同样的错误。同样的问题也发生在STS Spring 工具中。任何帮助表示赞赏。谢谢

最佳答案

感谢大家的帮助。将所有 jar 移至我的类路径并阅读其内容后,我找到了罪魁祸首。 udt-core 缺少一些东西,因为显然我有一些旧版本。我真的希望 Wildfly/the Netty 能更好地记录这一点。我下载了 udt-core jar,这解决了问题。最新的 jar 很难找到。他们在 http://repo1.maven.org/maven2/com/barchart/udt/

关于java - Netty NIO Udt 尝试给出错误,我无法在文档中找到答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19849405/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com