Wir haben eine Maven Projektstruktur wie dieses:mvn Abhängigkeit: Purge-local-Repository nicht in Multi-Modul-Projekt
Parent
L A
L B
A
hängt von B
Beide haben verschiedene Abhängigkeiten von anderen Libs
Das Erstellen dieses mit mvn clean install
funktioniert gut, aber wenn wir versuchen, alle Abhängigkeiten wie beschrieben here mit
mvn dependency:purge-local-repository
Wir erhalten eine Fehlermeldung, dass es nicht um die Abhängigkeit zu B:jar:snapshot-version
lösen können:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.10:purge-local-repository (default-cli) on project A: Failed to refresh project dependencies for: A:jar:4.0.1-SNAPSHOT: required artifacts missing:
[ERROR] B:jar:6.0-5
Meine aktuelle Interpretation ist, dass während eines tatsächlichen Build B
zuerst bekommt bauen und gelöst bekommen können, aber während der Spülung es wird nichts gebaut, so dass die Auflösung fehlschlägt. Aber das Projekt ist da und seine Abhängigkeiten sollten gelöscht werden. Wie kann ich das beheben?
-DactTransitively=false
scheint nichts zu ändern.
Warum würden Sie lokalen Cache löschen möchten? Welche Art von Problem versuchen Sie zu lösen? – khmarbaise
@khmarbaise Ich muss den lokalen Repository-Cache bereinigen, da sich der Inhalt von Artefakten geändert hat, ohne dass die Version geändert wurde. Mir ist bewusst, dass das auf allen Ebenen falsch ist, aber ich kann es nicht ändern (zumindest jetzt). Außerdem habe ich keinen Zugriff auf das Dateisystem, welches sich auf einem CI-Server befindet. –
Der Job im CI-Server sollte den lokalen Cache haben und nicht den ganzen CI-Server, weil er automatisch alle Jobs von diesem Cache abhängig macht ... I würde vorschlagen, einen separaten Job zu machen, der diese Dinge löscht, macht keinen Maven-Aufruf dafür ... Insbesondere, wenn Sie die Unveränderlichkeit von Release-Versionsartefakten verletzen, die genau solche Probleme und Probleme ergeben ... – khmarbaise