Je suis confronté à plusieurs avertissements tels que "Le fichier POM pour ... est manquant, aucune information de dépendance disponible" lors de la construction de mon projet Java maven.
Les artefacts sont stockés sur le serveur Nexus hébergé dans notre société. Le problème a commencé après que j'ai planifié une tâche dans Nexus pour "Supprimer les versions du référentiel" afin de la nettoyer et de ne gérer que les 2 dernières versions.
À cause de cela, je reçois ces avertissements pour les anciennes versions supprimées:
[WARNING] The POM for xpto:jar:jar:8.16.1 is missing, no dependency information available
[WARNING] The POM for xpto:jar:jar:8.17.0 is missing, no dependency information available
[WARNING] The POM for xpto:jar:jar:8.18.0 is missing, no dependency information available
[WARNING] The POM for xpto:jar:jar:8.19.0 is missing, no dependency information available
Une fois que j'ai plusieurs projets de composants et que les versions sont des constantes, lors de la compilation d'un projet utilisant ces composants, je reçois de nombreux avertissements de ce type.
Est-ce que vous proposez un moyen d'éviter ces avertissements ou d'exécuter un objectif côté client qui pourrait re-résoudre ou réindexer les dépendances?
Cordialement,
Parfois, les rejets sont jetables
Comme le décrit l'article ci-dessus, selon votre entreprise, il se peut que vous n'ayez pas besoin de stocker les anciennes versions sur votre propre référentiel. Je suis inclus dans ce scénario.
Afin de ne conserver, par exemple, que les 2 dernières versions de mes projets de composants, certaines étapes doivent être suivies afin d'éviter les messages maven [WARNING]:
Vous devez ajouter une tâche à votre référentiel pour conserver la seule version n. Cela peut être fait par:
Le meilleur atout de cette question est de reconstruire les fichiers de métadonnées Maven (maven-metadata.xml), une fois que les informations sur les anciennes versions seront conservées jusqu'au moment où elles seront reconstruites. Cela peut être fait par:
Maintenant, le référentiel local doit savoir que les fichiers de métadonnées ont été mis à jour. Cela peut être fait par le paramètre:
mvn -U:
-U, - update-snapshots Force une vérification de la mise à jour communiqués et instantanés à distance
Par exemple:
paquet propre de mvn -U
Vérifiez votre settings.xml
, c’est-à-dire exporté en tant que tel dans bash:
export MVN_SETTINGS=~/.m2/settings.xml
Cet avertissement apparaît généralement lorsque vous ne pouvez pas télécharger les dépendances depuis Internet.