2017-07-01 2 views
0

J'essaye de démarrer un simple serveur API avec l'API undertow.io. Voici mon code de démarrage.Undertow Invalid Logger Interface

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

Je vais obtenir cette erreur:

[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 [email protected]) 
    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 

Je pense que c'est un problème avec l'enregistreur, mais undertow je n'ai aucune idée de le réparer. S'il vous plaît aidez-moi :)

+0

Je trouve [ce message] (http://lists.jboss.org/pipermail/undertow-dev/2013-February/000155.html) avec le même problème et la [réponse ] (http://lists.jboss.org/pipermail/undertow-dev/2013-February/000157.html) indique qu'une recompilation l'a corrigé. [Ce message] (https://developer.jboss.org/thread/222022?_sscc=t) signale que certaines "dépendances intra-espace de travail merdiques" l'ont brisé et ont été corrigées en désactivant les dépendances maven. L'une ou l'autre de ces aides? – Draco18s

Répondre

0

Utilisez-vous les dépendances correctes? J'ai utilisé les mêmes dépendances que celles mentionnées dans le site officiel et cela a fonctionné pour moi sous Java 1.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> 

Console-out

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 

localhost: 80 80 impressions "Hello World 312"

+0

Merci! Mais je ne suis pas une application autonome. C'est seulement un plugin pour Spigot (Spigotmc.org) – Markus