sources plugin example maven jaxb xsd xjc jaxb2-maven-plugin

sources - jaxb2 maven plugin example wsdl



org.codehaus.mojo: jaxb2-maven-plugin: 1.6-> incompatibilidad API fue encontrado (3)

Tengo un error similar. Lo resolví usando la versión 1.5 (en lugar de 1.6) de jaxb2-maven-plugin.

cuando usas
jaxb2-maven-plugin de codehaus obtengo el siguiente marcador de problema en eclipse, el contenido de este marcador contiene lo siguiente:

Description Resource Path Location Type Execution configuration of goal org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc failed: An API incompatibility was encountered while executing org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc: java.lang.NoSuchMethodError: org.codehaus.plexus.util.DirectoryScanner.setupMatchPatterns()V ----------------------------------------------------- realm = plugin>org.codehaus.mojo:jaxb2-maven-plugin:1.6 strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy urls[0] = file:/C:/develop/maven/repository/org/codehaus/mojo/jaxb2-maven-plugin/1.6/jaxb2-maven-plugin-1.6.jar urls[1] = file:/C:/develop/maven/repository/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.jar urls[2] = file:/C:/develop/maven/repository/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.jar urls[3] = file:/C:/develop/maven/repository/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.jar urls[4] = file:/C:/develop/maven/repository/org/apache/maven/reporting/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.jar urls[5] = file:/C:/develop/maven/repository/org/apache/maven/doxia/doxia-sink-api/1.1/doxia-sink-api-1.1.jar urls[6] = file:/C:/develop/maven/repository/org/apache/maven/doxia/doxia-logging-api/1.1/doxia-logging-api-1.1.jar urls[7] = file:/C:/develop/maven/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar urls[8] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar urls[9] = file:/C:/develop/maven/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar urls[10] = file:/C:/develop/maven/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar urls[11] = file:/C:/develop/maven/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar urls[12] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar urls[13] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-xjc/2.2.7/jaxb-xjc-2.2.7.jar urls[14] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-core/2.2.7/jaxb-core-2.2.7.jar urls[15] = file:/C:/develop/maven/repository/javax/xml/bind/jaxb-api/2.2.7/jaxb-api-2.2.7.jar urls[16] = file:/C:/develop/maven/repository/com/sun/istack/istack-commons-runtime/2.16/istack-commons-runtime-2.16.jar urls[17] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-jxc/2.2.7/jaxb-jxc-2.2.7.jar urls[18] = file:/C:/develop/maven/repository/com/sun/xml/bind/jaxb-impl/2.2.7/jaxb-impl-2.2.7.jar urls[19] = file:/C:/develop/maven/repository/com/sun/xml/fastinfoset/FastInfoset/1.2.12/FastInfoset-1.2.12.jar urls[20] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-compiler-api/1.9.1/plexus-compiler-api-1.9.1.jar urls[21] = file:/C:/develop/maven/repository/org/codehaus/plexus/plexus-utils/3.0.16/plexus-utils-3.0.16.jar Number of foreign imports: 4 import: Entry[import org.sonatype.plexus.build.incremental from realm ClassRealm[plexus.core, parent: null]] import: Entry[import org.codehaus.plexus.util.Scanner from realm ClassRealm[plexus.core, parent: null]] import: Entry[import org.codehaus.plexus.util.AbstractScanner from realm ClassRealm[plexus.core, parent: null]] import: Entry[import from realm ClassRealm[maven.api, parent: null]] ----------------------------------------------------- (org.codehaus.mojo:jaxb2-maven-plugin:1.6:xjc:configuration:generate-sources) pom.xml

la configuración del complemento se ve así:

<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> <version>1.6</version> <executions> <execution> <id>data</id> <goals> <goal>xjc</goal> </goals> <configuration> <schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory> <schemaFiles>WebServiceDataSchema.xsd</schemaFiles> <packageName>my.cool.package.jaxb.data</packageName> <!-- The name of your generated source package --> <outputDirectory>${project.basedir}/src/gen/java</outputDirectory> <target>2.1</target> </configuration> </execution> <execution> <id>configuration</id> <goals> <goal>xjc</goal> </goals> <configuration> <schemaDirectory>${project.basedir}/src/main/resources</schemaDirectory> <schemaFiles>WebServiceConfigurationSchema.xsd</schemaFiles> <packageName>my.cool.package.jaxb.config</packageName> <!-- The name of your generated source package --> <outputDirectory>${project.basedir}/src/gen/java</outputDirectory> <target>2.1</target> <clearOutputDir>false</clearOutputDir> </configuration> </execution> </executions> </plugin>

¿Alguien tiene problemas similares?


m2e no parece manejar múltiples bloques de ejecución con el complemento 1.6. Sin embargo, Command Line Maven ejecuta estos formularios correctamente. Si realiza una copia de seguridad del complemento 1.5 jaxb, m2e está contento, pero el complemento solo ejecuta el primero de los bloques de ejecución, dejándolo con una compilación diferente.

Mi solución (hasta ahora) es no usar m2e, aunque obviamente no es óptimo.


Yo tuve el mismo problema. Lo resolví actualizando a la versión más reciente de Eclipse Luna 4.4 (Java Developer versión que incluye m2e-wtp, no la versión de Java EE). Supongo que incluye una versión más nueva de m2e-wtp que soluciona este problema (?!)