Considérer:
Lorsque je crée simple Maven projet dans Eclipse Je reçois cette erreur:
web.xml est manquant et
<failOnMissingWebXml>
est défini sur true
Comment puis-je résoudre ce problème?
eclipse
maven
jakarta-ee
m2eclipse
Yogesh Doke
la source
la source
maven-war-plugin
. Il s'agit d'un plugin implicite où la valeur par défaut de cette propriété de configuration est true. Vous devez le déclarer explicitement et définir la propriété de configuration sur false. En savoir plus ici . Ou vous pouvez ajouter un web.xml videRéponses:
Vous pouvez le faire aussi comme ceci:
Il générera un dossier WEB-INF dans src / main / webapp et un web.xml dedans.
la source
web.xml
fichier inutile . Vous devriez résoudre ce problème dans votre outil de construction (c'est-à-dire maven) à la place.Ceci est une erreur maven. Il indique qu'il attend un fichier web.xml dans votre projet car il s'agit d'une application Web, comme indiqué par
<packaging>war</packaging>
. Cependant, pour les applications Web récentes, un fichier web.xml est totalement facultatif. Maven doit rattraper cette convention. Ajoutez ceci à votre mavenpom.xml
pour laisser maven rattraper son retard et vous n'avez pas besoin d'ajouter un inutileweb.xml
à votre projet:C'est une meilleure solution que d'ajouter un vide
web.xml
car de cette façon votre produit final reste propre, vous ne faites que changer vos paramètres de construction.Pour les versions plus récentes de maven, vous pouvez également utiliser la version plus courte:
la source
Interface WebApplicationInitializer
cette réponse est l'approche correcte. C'est la manière sensée de résoudre ce problème - inutile d'ajouterweb.xml
après avoir pris des mesures pour vivre sans lui!<properties><failOnMissingWebXml>false</failOnMissingWebXml></properties>
suffit au lieu des paramètres de configuration du plugin plus détaillés.Si vous avez déjà web.xml sous / src / main / webapp / WEB-INF mais que vous obtenez toujours l'erreur "web.xml est manquant et est défini sur true", vous pouvez vérifier si vous avez inclus / src / main / webapp dans la source de votre projet.
Voici les étapes que vous pouvez suivre:
(J'ai vérifié cela avec Eclipse Mars)
la source
Si vous utilisez Spring Tool Suite, l'option Generate Deployment Descriptor Stub est déplacée sous Java EE Tools, de sorte que vous:
Cela créera un fichier web.xml dans le dossier src / main / webapp / WEB-INF /, et bien sûr supprimera l'erreur du fichier pom.xml de Maven.
la source
J'ai le même problème. Après avoir étudié et cherché sur Google, j'ai résolu mon problème:
Faites un clic droit sur le dossier du projet, allez dans
Java EE Tools
, sélectionnezGenerate Deployment Descriptor Stub
. Cela créeraweb.xml
dans le dossiersrc/main/webapp/WEB-INF
.la source
Vous pouvez également faire ceci qui est moins verbeux
la source
Eclipse reconnaît un
webapp
répertoire par défaut incorrect . Par conséquent, nous devons le définir clairementmaven-war-plugin
.Une fois ce paramètre enregistré, l'erreur ne se produira jamais si elle est supprimée. (Je ne peux pas expliquer pourquoi.)
la source
J'ai eu le même problème, même si j'avais un
'src/main/webapp/WEB-INF/'
dossier correctweb.xml
.Le problème a disparu après avoir recréé la configuration (maven-> eclipse) avec
Maven build..
j'ai exécutémvn eclipse:clean eclipse:eclipse
Et puis j'avais l'habitude
Maven -> Update Project
d'ajouter des options spécifiques au plugin (eclipse-> maven).la source
J'ai rencontré ce problème uniquement dans eclipse, tout fonctionnait bien dans la ligne de commande Maven et mon fichier web.xml existait. C'est un projet mature (déjà déployé en production) qui a été impacté. Mon problème était lié aux métadonnées de l'éclipse. Il y avait un problème avec l'un des fichiers de mon dossier .settings /, en particulier org.eclipse.wst.common.component avait été modifié. J'ai pu restaurer ce fichier à sa version antérieure, ce qui a résolu le problème dans mon cas.
Notez que la réponse de Yuci n'a pas fonctionné pour moi, lorsque j'ai essayé de cliquer sur Deployment Assembly dans les propriétés de l'éclipse, j'ai eu une erreur qui disait "la page actuellement affichée contient des valeurs non valides."
la source
Pour Project avec web.xml, présentez Project -> Properties -> Deployment Assembly, où vous pouvez ajouter le dossier src / main / webapp. Sauvegarder les modifications. Nettoyez le projet pour commencer.
Pour le projet avec web.xml non présent Définissez failOnMissingWebXml sur false dans pom.xml sous la balise properties.
la source
Faites ceci:
Allez et faites un clic droit sur Deployment Descriptor et cliquez sur Generate Deployment Descriptor Stub.
la source
Cela n'a aucun sens de créer un fichier web.xml juste elcipse le veut, même si cela n'est pas nécessaire. C'est le cas si vous avez un conatiner de servlet intégré ou vivant sans cfg xml comme le fait spring-boot. Le vous venez de diable JavaEE (trucs inutiles) dans eclipse au niveau du projet ou global
la source
Sélectionnez votre projet et sélectionnez l'option "Deployment Descriptor" puis choisissez "Generate Deployment Descriptor stub"
la source
L'étape de: Sélectionnez votre projet et sélectionnez l'option "Deployment Descriptor", puis choisissez "Generate Deployment Descriptor stub" fonctionne correctement. Le problème est que nous n'avons pas toujours besoin de web.xml, il est donc préférable d'ajouter false à pom.xml
la source
Faites un clic droit sur le
project --> New --> Other --> Standard Deployment Descriptor(web.xml)
puis appuyez sur Suivant, il créera un
WEB-INF
dossier avec unweb.xml
fichier à l'intérieur.C'est fait.
la source
Créez le dossier WEB-INF dans src / webapp, et incluez la page web.xml dans le dossier WEB-INF puis
la source
Supprimer les fichiers de -web / .setting & -admin / .setting
la source
Faites un clic droit sur le projet, allez dans Maven -> Mettre à jour le projet ... , puis vérifiez la mise à jour forcée des instantanés / versions , puis cliquez sur OK . C'est fait!
la source