【问题标题】:Java Undertow Dependency IssueJava Undertow 依赖问题
【发布时间】:2022-01-07 07:08:23
【问题描述】:

我正在尝试让 Undertow 在 Java 应用程序中工作,但我遇到了一些依赖关系问题。一切正常,但每次我尝试运行时都会出现以下错误。

Exception in thread "main" java.lang.NoClassDefFoundError: org/xnio/ChannelListener

我没有使用 maven,但我从 Undertow 站点的链接下载了以下 Undertow jar。

undertow-core-2.2.13.Final.jar
undertow-servlet-2.2.13.Final.jar
undertow-websockets-jsr-2.2.13.Final.jar

代码与 Undertow 网站上给出的示例几乎相同,我找不到太多关于特定依赖项的提及。我确定我错过了什么

import java.util.*;
import java.io.*;

import io.undertow.*;
import io.undertow.server.*;
import io.undertow.util.*;

public class TestingUndertow {

    public static void main(String[] args) {

        Undertow server = (
            Undertow
            .builder()
            .addHttpListener(31, "0.0.0.0")
            .setHandler(new HttpHandler() {
                public void handleRequest(final HttpServerExchange exchange) throws Exception {
                    exchange.getResponseHeaders().put(Headers.CONTENT_TYPE, "text/plain");
                    exchange.getResponseSender().send("Nothing");
                }
            })
            .build()
        );

        server.start();

    }

}

【问题讨论】:

  • Undertow documentation“Undertow 依赖于 XNIOJBoss Logging,它们也需要下载。” 那么,您是否下载并包含了这些在你的类路径中?
  • 不,我完全错过了,我现在会尝试添加这些
  • @FedericoklezCulloca 谢谢你让我更接近了!

标签: java dependencies undertow


【解决方案1】:

原来我遗漏了许多依赖项,这些都是它工作所必需的

jboss-logging-3.4.2.Final.jar
jboss-threads-3.4.2.Final.jar
undertow-core-2.2.12.Final.jar
undertow-servlet-2.2.12.Final.jar
wildfly-client-config-1.0.1.Final.jar
wildfly-common-1.5.4.Final.jar
xnio-api-3.8.4.Final.jar
xnio-nio-3.8.4.Final.jar

如果这可以帮助像我一样有依赖问题的其他人,我发现这个网站真的很有帮助 https://javalibs.com/

您可以搜索一个模块,它会让您知道该模块的所有依赖项,以便您知道也下载它们(或者只使用 maven)

【讨论】:

  • “或者只使用 maven”,这看起来是正确的做法 :)
  • 除非你喜欢像我一样折磨自己
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-07
  • 1970-01-01
  • 2011-08-23
  • 1970-01-01
  • 2012-05-23
  • 1970-01-01
相关资源
最近更新 更多