Maven best practices: einschließlich Zeitstempel für snapshot-releases oder nicht?
Vor kurzem habe ich Maven snapshot-build-Fähigkeiten, um ein Projekt, konfiguriert für die Verwendung eindeutiger Zeitstempel version bereitgestellt Artefakt. Aber es gibt einige Verwirrung über ob dies ist das richtige zu tun ("snapshots" in Frage, die eingesetzt werden, um eine öffentliche repos, nicht nur innerhalb einer Organisation wie Unternehmen): einige sagen, es verursacht Probleme, wenn Sie versuchen, um die Verwendung von snapshots.
So: bedenkt man, wie viel von Maven ist die Konvention beruht, und nach wahrgenommen, best practices, ich hoffe es gibt einige Richtlinien, welche option zu wählen.
(HINWEIS: die ich leicht bearbeitet und der Titel-ich bin speziell interessant Vorteile (oder deren fehlen), einschließlich der eindeutigen Zeitstempel, über die Bereitstellung der option, für die öffentliche snapshot-Versionen; nicht so sehr, ob die Verwendung von Zeitstempeln, wenn Sie enthalten sind, obwohl das offensichtlich etwas Verwandte Frage)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Regel sollten Sie immer bauen gegen die SNAPSHOT-Abhängigkeit. Sie sollten jedoch vermeiden, die Freigabe Ihres Produkts, wenn es enthält -SNAPSHOT-Abhängigkeiten. Wenn Sie die Maven-Release-Plug-in zur Automatisierung Ihrer release wird es überprüfen, um sicherzustellen, Sie nicht mit der Veröffentlichung von plugins und Abhängigkeiten.
Aber das ist nicht immer möglich. In den Fällen, wo muss ich etwas release basiert auf einem snapshot-build, wenn ich die explizite timestamp/build-Nummer anstatt die SNAPSHOT-version Namensschema.
Können Sie den Vorgang automatisieren, mit dem Versionen Von Maven-Plugin. Es stellt Ziele zu sperren und zu entsperren snapshot-Versionen in Ihrer POM.
Der springende Punkt, der eine Momentaufnahme ist, lassen Sie jemand verwenden Sie die neueste version des Codes. Warum würden Sie wollen, um einen snapshot fünf Versionen zurück?
Mit dem Gedanken im Kopf, was tun Zeitstempel in die Artefakt-name kaufen Sie?
Ich habe mit Maven für etwa 5 Jahren jetzt. Ich habe noch nie eine snapshot jar mit einem timestamp im Namen.