Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 下拖无效记录器接口_Java_Logging_Minecraft_Undertow - Fatal编程技术网

Java 下拖无效记录器接口

Java 下拖无效记录器接口,java,logging,minecraft,undertow,Java,Logging,Minecraft,Undertow,我正在尝试用这个api启动一个简单的api服务器。这是我的启动代码 this.server = Undertow.builder().addHttpListener(this.port, this.host).setHandler(new HttpHandler() { @Override public void handleRequest(HttpServerExchange exchange) throws Exception { ex

我正在尝试用这个api启动一个简单的api服务器。这是我的启动代码

this.server = Undertow.builder().addHttpListener(this.port, this.host).setHandler(new HttpHandler() {
        @Override
        public void handleRequest(HttpServerExchange exchange) throws Exception {
            exchange.getResponseSender().send("Hello World");
        }
    }).build();
   this.server.start();
我将得到以下错误:

    [22:26:46] [Server thread/ERROR]: Error occurred while enabling MWS v1.0-SNAPSHOT (Is it up to date?)
java.lang.ExceptionInInitializerError
    at io.undertow.Undertow.start(Undertow.java:113) ~[?:?]
    at me.ripes.mws.server.ApiServer.startServer(ApiServer.java:30) ~[?:?]
    at me.ripes.mws.MWS.onEnable(MWS.java:20) ~[?:?]
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:271) ~[spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugin(CraftServer.java:376) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugins(CraftServer.java:326) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.reload(CraftServer.java:750) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.Bukkit.reload(Bukkit.java:540) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchCommand(CraftServer.java:650) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchServerCommand(CraftServer.java:636) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at net.minecraft.server.v1_11_R1.DedicatedServer.aM(DedicatedServer.java:437) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:400) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-d276ab1-1f6c04c]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
Caused by: java.lang.IllegalArgumentException: Invalid logger interface io.undertow.UndertowLogger (implementation not found in org.bukkit.plugin.java.PluginClassLoader@12cb152a)
    at org.jboss.logging.Logger$1.run(Logger.java:2556) ~[?:?]
    at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_131]
    at org.jboss.logging.Logger.getMessageLogger(Logger.java:2529) ~[?:?]
    at org.jboss.logging.Logger.getMessageLogger(Logger.java:2516) ~[?:?]
    at io.undertow.UndertowLogger.<clinit>(UndertowLogger.java:59) ~[?:?]
    ... 19 more
[22:26:46][Server thread/ERROR]:启用MWS v1.0-SNAPSHOT时出错(它是最新的吗?)
java.lang.ExceptionInInitializeError
在io.undertow.undertow.start(undertow.java:113)~[?:?]
at me.ripes.mws.server.ApiServer.startServer(ApiServer.java:30)~[?:?]
at me.ripes.mws.mws.oneable(mws.java:20)~[?:?]
在org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:271)~[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugin(CraftServer.java:376)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugins(CraftServer.java:326)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.craftbukkit.v1_11_R1.CraftServer.reload(CraftServer.java:750)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.bukkit.reload(bukkit.java:540)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25)[spiget-1.11.2.jar:git-spiget-d276ab1-1f6c04c]
在org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchCommand(CraftServer.java:650)[spiget-1.11.2.jar:git-spiget-d276ab1-1f6c04c]
在org.bukkit.craftbukkit.v1_11_R1.CraftServer.dispatchServerCommand(CraftServer.java:636)[spiget-1.11.2.jar:git-spiget-d276ab1-1f6c04c]
在net.minecraft.server.v1_11_R1.dicatedserver.aM(dicatedserver.java:437)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在net.minecraft.server.v1_11_R1.dicatedserver.D(dicatedserver.java:400)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576)[spigot-1.11.2.jar:git-spigot-d276ab1-1f6c04c]
在java.lang.Thread.run(未知源代码)[?:1.8.0_131]
原因:java.lang.IllegalArgumentException:无效的记录器接口io.undertow.UndertowLogger(在org.bukkit.plugin.java中找不到实现)。PluginClassLoader@12cb152a)
在org.jboss.logging.Logger$1.run(Logger.java:2556)~[?:?]
在java.security.AccessController.doPrivileged(本机方法)~[?:1.8.0131]
在org.jboss.logging.Logger.getMessageLogger(Logger.java:2529)~[?:?]
在org.jboss.logging.Logger.getMessageLogger(Logger.java:2516)~[?:?]
在io.undertower.UndertowLogger.(UndertowLogger.java:59)~[?:?]
... 还有19个
我认为这是一个问题与拖航记录器,但我不知道如何解决它。
请帮助我:)

您使用的依赖项是否正确?我使用了与官方网站中提到的相同的依赖项,它在Java1.8下对我有效

HelloWorldServer.java

package undertow;

import io.undertow.Undertow;
import io.undertow.server.HttpHandler;
import io.undertow.server.HttpServerExchange;
import io.undertow.util.Headers;

public class HelloWorldServer {

    public static void main(final String[] args) {      
        HelloWorldServer helloWorldServer = new HelloWorldServer();
        helloWorldServer.initiateServer();
    }

    private void initiateServer() {

        this.server = Undertow.builder().addHttpListener(this.port, this.host).setHandler(new HttpHandler() {
            @Override
            public void handleRequest(HttpServerExchange exchange) throws Exception {
                exchange.getResponseSender().send("Hello World 312");
            }
        }).build();
       this.server.start();
    }

    Undertow server = null;
    int port= 8080;
    String host = "localhost";
}
pom.xml

<dependencies>
    <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-core</artifactId>
        <version>1.4.12.Final</version>
    </dependency>

    <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-servlet</artifactId>
        <version>1.4.12.Final</version>
    </dependency>

    <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-websockets-jsr</artifactId>
        <version>1.4.12.Final</version>
    </dependency>
</dependencies>

尾随
底拖缆芯
1.4.12.最终版本
尾随
下拖servlet
1.4.12.最终版本
尾随
下拖式网箱jsr
1.4.12.最终版本
控制台输出

Jul 11, 2017 10:45:33 PM org.xnio.Xnio <clinit>
INFO: XNIO version 3.3.6.Final
Jul 11, 2017 10:45:33 PM org.xnio.nio.NioXnio <clinit>
INFO: XNIO NIO Implementation Version 3.3.6.Final
2017年7月11日10:45:33 PM org.xnio.xnio
信息:XNIO版本3.3.6.Final
2017年7月11日晚上10:45:33 org.xnio.nio.NioXnio
信息:XNIO NIO实现版本3.3.6.Final
本地主机:8080打印“Hello World 312”

io.undertowg.UndertowLogger
是一个接口,它使用
jboss.logging
注释之一进行注释。编译接口时,将执行注释处理器,该处理器将生成记录器实现

错误消息意味着,在运行时,JBoss logger无法加载实现类

如果所讨论的类是由您生成的,请检查在生成过程中是否正在运行注释处理器。Maven有时会发疯,拒绝运行注释处理器。如果是这样,
mvn clean
通常会解决这个问题


如果该类是由第三方提供的,那么您可能缺少一些依赖项。

您的堆栈跟踪包含很多内容:~[?:?]。如果您在jar上运行proguard来缩小和模糊,那么它可能会删除您需要的记录器接口。禁用proguard,然后重试。

我发现有相同的问题,并且指示重新编译修复了该问题。一些“糟糕的工作区内依赖项”的评论打破了它,并通过禁用maven依赖项得到修复。这两种都有帮助吗?谢谢!但我不是一个独立的应用程序。它只是一个Spigot插件(Spigotmc.org)
Caused by: java.lang.IllegalArgumentException: Invalid logger interface io.undertow.UndertowLogger (implementation not found in org.bukkit.plugin.java.PluginClassLoader@12cb152a)
    at org.jboss.logging.Logger$1.run(Logger.java:2556) ~[?:?]