ErrorListener manquant lors de l'utilisation de maven-jaxb-plugin avec eclipse et m2e
J'ai de l'installation, un projet pour le plugin "org.jvnet.jaxb2.maven2:maven-jaxb2-plugin"
. Il fonctionne, mais je n'aime pas le message d'erreur affiché à l'intérieur de l'Éclipse de l'éditeur pour l' "pom.xml". Le message indique:
Execution default of goal org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.13.1:generate failed: A required class was missing while executing org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.13.1:generate: com/sun/xml/bind/api/ErrorListener
Le pom et par la présente l'ensemble du projet ist marqué pour être dans l'erreur.
Voici mon pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>de.gombers.lernen.jaxb</groupId>
<artifactId>PlayWithJAXB</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<show>private</show>
<nohelp>true</nohelp>
</configuration>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.13.1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<extension>true</extension>
<useDependenciesAsEpisodes>true</useDependenciesAsEpisodes>
<outputDirectory>target/generated-sources/jaxb</outputDirectory>
<packageName>de.gombers.lernen.jaxb.generated</packageName>
<schemaDirectory>src/main/resources</schemaDirectory>
<schemaFiles>Employee.xsd</schemaFiles>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
<!-- JAXB -->
<dependency>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin-core</artifactId>
<version>0.13.1</version>
</dependency>
<dependency>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb22-plugin</artifactId>
<version>0.13.1</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-project</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
<version>3.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-settings</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-container-default</artifactId>
<version>1.0-alpha-9-stable-1</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-jxc</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-xjc</artifactId>
<version>2.2.7</version>
</dependency>
<!-- HELPERS -->
<dependency>
<groupId>de.gombers</groupId>
<artifactId>BasicTools</artifactId>
<version>1.0.0</version>
</dependency>
<!-- LOGGING -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.13</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.2</version>
</dependency>
<!-- JUNIT -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.8.4</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<!-- JSON converter -->
<dependency>
<artifactId>jackson-core</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<version>2.3.3</version>
</dependency>
<dependency>
<artifactId>jackson-annotations</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<version>2.3.3</version>
</dependency>
<dependency>
<artifactId>jackson-databind</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<version>2.3.3</version>
</dependency>
</dependencies>
</project>
Mon "mvn validate
de la commande" n'est pas en état de toute erreur, et le prétendu ErrorListener est fourni avec l'artefact "com.sun.xml.bind:jaxb-core
". Et comme déjà dit, lors de l'exécution du projet à générer des sources, il fonctionne très bien. Personne n'a l'exécution de ce plugin et de partager ses pom.xml?
Je suis totalement perdu maintenant. J'ai essayé avec ce pom.xml:
Je suis totalement perdu maintenant. J'ai essayé avec ce pom.xml: 1. l'importation d'une nouvelle Eclipse(Mars) de l'espace de travail 2. construire à partir de zéro dans une nouvelle Eclipse(Mars) de l'espace de travail 3. Construire à partir de zéro dans une nouvelle Eclipse(Kepler) de l'espace de travail avec un nouveau initiale dépôt local pour les trois échantillons, je n'ai pas réussi avec "generate-sources" de l'INTERFACE utilisateur d'Eclipse, mais la ligne de commande "mvn generate-sources" fonctionne très bien.
Fourni dans
Merci, Mais en utilisant cela ne changera rien dans Eclipse comportement. Il semble être un problème d'Eclipse; mais, dans ce cas; il aurait probablement été connu à la communauté déjà. Le message d'erreur indique que l'exception est levée "au org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:168)"
Utilisé à la même pom sur un ordinateur différent avec son propre référentiel local. Mais au sein d'Eclipse le pom est encore marquée être dans l'erreur parce que la classe ErrorListener est manquant. Je suis maintenant assez surem il y a vraiment un problème avec Eclipse et/ou de la m2e-plugin. Ont remplacé le tas de <!-- JAXB --> dépendances par <!-- JAXB --> <dépendance> <groupId > org.glassfish.jaxb</groupId> <artifactId>jaxb-core</artifactId> <version>2.2.11< version> </dépendance> maintenant, avec le même résultat. Quelqu'un peut-il confirmer mon problème en utilisant mon pom.xml pour une nouvelle Maven-Projet?
Je suis totalement perdu maintenant. J'ai essayé avec ce pom.xml: 1. l'importation d'une nouvelle Eclipse(Mars) de l'espace de travail 2. construire à partir de zéro dans une nouvelle Eclipse(Mars) de l'espace de travail 3. Construire à partir de zéro dans une nouvelle Eclipse(Kepler) de l'espace de travail avec un nouveau initiale dépôt local pour les trois échantillons, je n'ai pas réussi avec "generate-sources" de l'INTERFACE utilisateur d'Eclipse, mais la ligne de commande "mvn generate-sources" fonctionne très bien.
Fourni dans
org.glassfish.jaxb:jaxb-core
.Merci, Mais en utilisant cela ne changera rien dans Eclipse comportement. Il semble être un problème d'Eclipse; mais, dans ce cas; il aurait probablement été connu à la communauté déjà. Le message d'erreur indique que l'exception est levée "au org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:168)"
Utilisé à la même pom sur un ordinateur différent avec son propre référentiel local. Mais au sein d'Eclipse le pom est encore marquée être dans l'erreur parce que la classe ErrorListener est manquant. Je suis maintenant assez surem il y a vraiment un problème avec Eclipse et/ou de la m2e-plugin. Ont remplacé le tas de <!-- JAXB --> dépendances par <!-- JAXB --> <dépendance> <groupId > org.glassfish.jaxb</groupId> <artifactId>jaxb-core</artifactId> <version>2.2.11< version> </dépendance> maintenant, avec le même résultat. Quelqu'un peut-il confirmer mon problème en utilisant mon pom.xml pour une nouvelle Maven-Projet?
OriginalL'auteur Ulrich | 2015-12-09
Vous devez vous connecter pour publier un commentaire.
La mise à jour de Plugin pour version 0.13.3 résout ce problème.
OriginalL'auteur Mahmoud Saleh
J'ai résolu ce problème en supprimant toute Jre de mes préférences d'Eclipse (Java > Installé Jre) et de ne pas quitter sélectionné JDK. Même si le Jre n'ont pas été sélectionnés, ils ont encore la cause du problème et doivent être enlevées. J'ai été en mesure de quitter le Jre sur mon système.
Ce post a été très utile: http://diggingthroughcode.blogspot.ca/2016/05/trouble-with-maven-jaxb2-plugin-and.html
[Mise à jour]
Un autre collègue viens de tomber sur ce et pour lui, il semblait être le facteur essentiel est de Java a été utilisé pour exécuter Eclipse. Ne pas utiliser ce JAVA_HOME est configuré trop, mais la première exécution de Java disponible. Il a enlevé tous les jre de son système et ne le quitta qu'un jdk et qui a résolu le problème. Je crois que le facteur déterminant est de savoir si l'éclipse est en cours d'exécution avec un jre ou jdk. Quand j'ai résolu le problème je l'ai fait retirer un jre de mon système et c'était probablement ce que l'éclipse a été à l'aide. Avec ce jre manquant, il est passé à un jdk même si j'ai eu d'autres jre disponible. Si vous ne souhaitez pas supprimer jre de votre système, vous pouvez spécifier ce que l'exécution de java eclipse doit utiliser (Comment lancer eclipse avec différentes version de java?). Si rien n'est spécifié eclipse va déterminer le runtime java à utiliser (Découvrez ce que la JVM de l'Éclipse est en cours d'exécution sur).
OriginalL'auteur Darren Reimer
Ce problème a été causé par eclipse en cours d'exécution sur un JRE au lieu d'un JDK.
Modifier votre eclipse.ini et le point à un adapté JDK - par exemple
cela a résolu le même problème que j'ai eu
OriginalL'auteur leftbit
Même problème ici le résoudre quand je baisse la version.
À partir de :
:
EDIT:
J'ai tout essayé :
-La suppression de tous les JRE depuis Eclipse
-À partir d'Eclipse avec JDK
EDIT2:
Vérifier votre
.m2
dossier. Trouver la problématique bocal et vérifiez sa taille. Dans certaines situations, Maven ne pouvaient pas télécharger la dépendance correctement et le.jar
peuvent exister mais ont0kb
taille. SI oui: Supprimer le.jar
et laissez Maven le télécharger à nouveau.OriginalL'auteur Lazar Lazarov
Vous pouvez essayer
OriginalL'auteur Vivek Padigela
J'ai eu un problème similaire:
Execution default of goal org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.13.3:generate failed: Prefix '' is already bound to ''
Dans mon cas, cela était dû à l'utilisation de Java 10 sur Java 8 projet. Commutation de la bonne version de Java résolu.
OriginalL'auteur Torbjørn M
J'ai eu le même problème, je sais que Ça pourrait être un peu idiot mais essayez de vérifier si l'ensemble des ressources (wsdl et xsd) sont disponibles à l'url que vous donnez dans le pom.xml
OriginalL'auteur Nicolas Ordonez Chala