Beim Erstellen meines Java-Projekts für Maven stehen mir einige Warnungen wie "Das POM für ... fehlt, keine Abhängigkeitsinformationen verfügbar" bevor.
Die Artefakte werden auf dem in unserem Unternehmen gehosteten Nexus-Server gespeichert. Das Problem begann, nachdem ich in Nexus eine Aufgabe zum "Entfernen von Releases aus dem Repository" eingeplant hatte, um sie zu bereinigen und nur die letzten 2 Releases zu verwalten.
Aus diesem Grund erhalte ich die folgenden Warnungen für die alten Releases:
[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
Sobald ich viele Komponentenprojekte habe und die Releases Konstanten sind, wenn ich ein Projekt kompiliere, das diese Komponenten verwendet, bekomme ich eine Menge solcher Warnungen.
Schlagen Sie eine Möglichkeit vor, diese Warnung zu vermeiden, oder führen Sie auf der Clientseite ein Ziel aus, das die Abhängigkeiten neu auflösen oder neu indizieren könnte?
Grüße,
Manchmal sind Releases verfügbar
Wie im obigen Artikel beschrieben, müssen Sie alte Versionen möglicherweise nicht in Ihrem eigenen Repository speichern, abhängig von Ihrem Unternehmen. Ich werde in dieses Szenario einbezogen.
Um beispielsweise nur die letzten 2 Releases aus meinen Komponentenprojekten beizubehalten, sollten einige Schritte befolgt werden, um die Maven-Meldungen [WARNING] zu vermeiden:
Sie sollten Ihrem Repository eine Aufgabe hinzufügen, um die einzigen Release-Freigaben von n zu erhalten. Dies kann geschehen durch:
Das "Ace in the Hole" für diese Frage besteht darin, die Maven-Metadatendateien (maven-metadata.xml) neu zu erstellen, sobald die alten Versionsinformationen gespeichert wurden, bis sie neu erstellt werden. Dies kann geschehen durch:
Nun muss das lokale Repository wissen, dass Metadatendateien aktualisiert wurden. Dies kann durch den Parameter erfolgen:
mvn -U:
-U, - update-snapshots Erzwingt eine Überprüfung auf aktualisierte - Releases und Snapshots auf Remote
Zum Beispiel:
mvn -U sauberes Paket
Überprüfen Sie Ihren settings.xml
, d. H. Als solches in bash exportiert:
export MVN_SETTINGS=~/.m2/settings.xml
Diese Warnung wird normalerweise angezeigt, wenn Sie die Abhängigkeiten nicht aus dem Internet herunterladen können.