tutorial run para oxygen instalar create eclipse maven java-ee m2eclipse

eclipse - run - Falta web.xml y<failOnMissingWebXml> está establecido en verdadero



maven para eclipse oxygen (17)

Cree la carpeta WEB-INF en src / webapp e incluya la página web.xml dentro de la carpeta WEB-INF y luego

Considerar:

Cuando creo un proyecto Maven simple en Eclipse obtengo este error:

Falta web.xml y <failOnMissingWebXml> está establecido en verdadero

¿Como puedo solucionar este problema?


Eclipse reconoce el directorio predeterminado incorrecto de la aplicación webapp . Por lo tanto, deberíamos establecerlo claramente con maven-war-plugin .

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.0.0</version> <configuration> <webappDirectory>src/main/webapp</webappDirectory> </configuration> </plugin> </plugins> </build>

Una vez guardada esta configuración, el error nunca se producirá si se elimina. (No puedo explicar por qué)


El paso de: Seleccione su proyecto y seleccione la opción "Descriptor de despliegue" y luego elija "Generar código auxiliar de Descriptor de despliegue" funciona bien. El problema es que no siempre es el caso que necesitamos web.xml, por lo que es mejor agregar falso a pom.xml


Eliminar archivos de -web / .setting & -admin / .setting


Encontré este problema solo en eclipse, todo funcionó bien en la línea de comando de Maven y mi archivo web.xml existía. Fue un proyecto maduro (ya desplegado en producción) que se vio afectado. Mi problema estaba relacionado con los metadatos del eclipse. Hubo un problema con uno de los archivos en mi carpeta .settings /, específicamente org.eclipse.wst.common.component había cambiado. Pude restaurar este archivo a su versión anterior, lo que resolvió el problema en mi caso.

Tenga en cuenta que la respuesta de Yuci no funcionó para mí, cuando traté de hacer clic en Ensamblaje de implementación en las propiedades del eclipse, recibí un error que decía "la página que se muestra actualmente contiene valores no válidos".


Este es un error maven. Dice que espera un archivo web.xml en su proyecto porque es una aplicación web, como lo indica <packaging>war</packaging> . Sin embargo, para aplicaciones web recientes, un archivo web.xml es totalmente opcional. Maven necesita ponerse al día con esta convención. Agregue esto a su maven pom.xml para que Maven se pom.xml al día y no necesite agregar un web.xml inútil a su proyecto:

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </build>

Esta es una mejor solución que agregar un web.xml vacío porque de esta manera su producto final se mantiene limpio, solo está cambiando sus parámetros de compilación.

Para versiones más actuales de maven también puede usar la versión más corta:

<properties> <failOnMissingWebXml>false</failOnMissingWebXml> </properties>


Hacer esto:

Vaya y haga clic derecho en Descriptor de implementación y haga clic en Generar código auxiliar de descriptor de implementación.


Haga clic derecho en el proyecto, vaya a Maven -> Actualizar proyecto ... , luego marque la Actualización forzada de instantáneas / lanzamientos , luego haga clic en Aceptar . ¡Está hecho!


No tiene sentido crear un web.xml, solo elcipse lo quiere, aunque no sea necesario. Este es el caso si tiene un contenedor de servlet incrustado o vive sin xml cfg como lo hace spring-boot. Lo que acaba de marcar JavaEE (cosas inútiles) en eclipse a nivel de proyecto o global

Eclipse/STS>Windows>Preferences>JavaEE>Doclet>Webdoclet> "uncheck" DeploymentDescriptor > OK


Seleccione su proyecto y seleccione la opción "Descriptor de despliegue" y luego elija "Generar código auxiliar de Descriptor de despliegue"


Si usa Spring Tool Suite, la opción para Generar despliegue de descriptor de despliegue se mueve bajo Herramientas Java EE, por lo que usted:

  1. Haga clic derecho en su proyecto
  2. Seleccionar herramientas Java EE
  3. Seleccione la opción Generar apéndice de descriptor de despliegue

Esto creará el archivo web.xml dentro de la carpeta src / main / webapp / WEB-INF / y, por supuesto, eliminará el error del archivo pom.xml de Maven.


Si ya tiene web.xml en / src / main / webapp / WEB-INF pero aún recibe el error "web.xml no se encuentra y está configurado como verdadero", puede verificar si ha incluido / src / main / webapp en la fuente de tu proyecto

Estos son los pasos que puede seguir:

  1. Puede verificar esto haciendo clic con el botón derecho en su proyecto, y abra el cuadro de diálogo Propiedades, y luego "Ensamblaje de implementación", donde puede agregar Carpeta / src / main / webapp. Guarde la configuración y luego,
  2. Vaya al menú Eclipse Proyecto -> Limpiar ... y limpie el proyecto, y el error debería desaparecer.

(Verifiqué esto con Eclipse Mars)


También puedes hacer esto, que es menos detallado

<properties> <failOnMissingWebXml>false</failOnMissingWebXml> </properties>


También puedes hacerlo así:

  1. Haga clic derecho en Descriptor de implementación en el Explorador de proyectos .
  2. Seleccione Generar stub de descriptor de implementación .

Generará la carpeta WEB-INF en src / main / webapp y un web.xml .


Tengo el mismo problema. Después de estudiar y buscar en Google, he resuelto mi problema:

Haga clic derecho en la carpeta del proyecto, vaya a Java EE Tools , seleccione Generate Deployment Descriptor Stub . Esto creará web.xml en la carpeta src/main/webapp/WEB-INF .


Tuve el mismo problema, a pesar de que tenía ''src/main/webapp/WEB-INF/'' carpeta ''src/main/webapp/WEB-INF/'' con el web.xml correcto.

El problema desapareció después de recrear la configuración (maven-> eclipse) con Maven build.. mvn eclipse:clean eclipse:eclipse

Y luego usé Maven -> Update Project para agregar opciones específicas del complemento (eclipse-> maven).


Para Proyecto con web.xml presente Proyecto -> Propiedades -> Ensamblaje de implementación, donde puede agregar Carpeta src / main / webapp. Guardar cambios. Limpia el proyecto para comenzar.

Para Proyecto con web.xml no presente Establezca failOnMissingWebXml en falso en pom.xml en la etiqueta de propiedades.