[INFO] [war:war {execution: default-war}]
[INFO] Packaging webapp
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
---- Debugging information ----
message : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException
cause-message : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
class : org.apache.maven.plugin.war.util.WebappStructure
required-type : org.apache.maven.plugin.war.util.WebappStructure
path : /webapp-structure
line number : 1
-------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Trace
com.thoughtworks.xstream.converters.ConversionException: Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
---- Debugging information ----
message : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
cause-exception : com.thoughtworks.xstream.converters.reflection.ObjectAccessException
cause-message : Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
class : org.apache.maven.plugin.war.util.WebappStructure
required-type : org.apache.maven.plugin.war.util.WebappStructure
path : /webapp-structure
line number : 1
-------------------------------
at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:63)
at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:45)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:46)
at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:117)
at com.thoughtworks.xstream.core.ReferenceByXPathMarshallingStrategy.unmarshal(ReferenceByXPathMarshallingStrategy.java:29)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:846)
at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:833)
at com.thoughtworks.xstream.XStream.fromXML(XStream.java:781)
at org.apache.maven.plugin.war.util.WebappStructureSerializer.fromXml(WebappStructureSerializer.java:73)
at org.apache.maven.plugin.war.AbstractWarMojo.buildWebapp(AbstractWarMojo.java:404)
at org.apache.maven.plugin.war.AbstractWarMojo.buildExplodedWebapp(AbstractWarMojo.java:375)
at org.apache.maven.plugin.war.WarMojo.performPackaging(WarMojo.java:181)
at org.apache.maven.plugin.war.WarMojo.execute(WarMojo.java:143)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: com.thoughtworks.xstream.converters.reflection.ObjectAccessException: Cannot construct org.apache.maven.plugin.war.util.WebappStructure as it does not have a no-args constructor
at com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider.newInstance(PureJavaReflectionProvider.java:59)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.instantiateNewInstance(AbstractReflectionConverter.java:257)
at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:124)
at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:56)
... 31 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Sat Sep 24 17:25:45 CEST 2011
[INFO] Final Memory: 15M/37M
[INFO] ------------------------------------------------------------------------
JDK: 1.7
Complemento del compilador de Maven:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
</plugin>
cuando ejecuto el error de instalación de destino anterior, ¿cómo puedo resolverlo?
Respuestas:
¿Quizás se está utilizando una versión del complemento de guerra de maven , que no funciona con Java 7? Según este problema (que describe un problema similar),
2.1.1
versión del complemento maven war debería funcionar.Incluya lo siguiente en su pom.xml
fuente
Tuve este problema al hacer un
mvn install
. Lo resolví haciendo unamvn clean
primera, seguida de unamvn install
.Usando maven 2.1.1, JDK 1.7.0.45.
fuente
Está confirmado: JDK7 con Maven 2.x producirá este error.
Estoy usando Maven 2.2.1 y JDK7 y obtuve este error. Cambié el JDK a la versión 1.6 y está funcionando bien.
fuente
En lugar de cambiar las versiones de JDK y Maven, intente esto:
fuente
Confirmado, encontré el mismo problema con maven 3.0.2 y jdk 1.7.0_02. Después de ejecutarse contra jdk 1.6.0_30, se compiló bien.
fuente
No creo que la versión fuera el problema. Resolví eliminar mi carpeta de destino (porque contiene webapp-cache.xml) y volver a instalar Maven.
fuente
Apache Maven WAR Plugin 3.0.0 resolvió todos los problemas:
No importa si usa jdk 1.6, 1.7 o 1.8
fuente
si usa jdk 1.6, agregue amablemente esta entrada de complemento a su pom.xml
fuente
Esto definitivamente parece estar relacionado con versiones de complementos, bibliotecas e idiomas incompatibles.
Dos años, y dos versiones de Java más tarde, tuve este mismo error mientras hacía un proyecto de muestra de un libro anterior sobre Spring e Hibernate.
Pude resolver el error comentando todas las etiquetas de versión para apache.maven.plugins y estableciendo la versión de Java en 1.8. Esto me permitió saber cuál fue la última y mejor versión de las bibliotecas, con el costo de algunas advertencias de Maven sobre la falta de etiquetas de versión. Si le preocupan las advertencias, puede configurar las etiquetas de versión para que sean la última versión y las advertencias de Maven deberían desaparecer.
Ejecuté
mvn clean package
y luego solomvn package
.fuente
Tuve este problema con mi eclipse Kepler. Tan pronto como me mudé a 4.4 (Luna), todo desapareció. Debe haber un problema con eclipse + maven integrado
Probé tanto JDK 1.7 como 1.8. Ninguna diferencia.
fuente
Para mí, cambiar la versión del complemento no pudo resolver el problema y cambiar la versión de JDK no está bajo mi control.
Sin embargo, ejecutar
mvn clean
antesmvn tomcat6:deploy
resolvió este problema.fuente
Asegúrese de que la versión de JDK en su ruta de compilación y la versión especificada en la etiqueta de origen coincidan.
Tenía la ruta de compilación apuntando a jdk 1.7 y "1.6" en la etiqueta de origen, cuando corrigí la versión a 1.7 en la etiqueta de origen, el problema se resolvió.
Ejecute mnv clean y mvn package.
fuente
Intenta borrar todo tu caché. Cuando eliminé la carpeta de destino, funciona bien.
(La carpeta de destino es donde maven pone todo el código compilado)
fuente
Recibí el mismo error después de actualizar mi versión de java de 8 a 8.x, lo arreglé yendo a pom y luego 1. clic derecho> maven> agregar complemento 2. escriba org.apache.maven y luego busque war plugin agréguelo y guárdelo, luego limpie e instale. Deberia de funcionar.
fuente