wake-up-neo.com

Maven-Snapshot-Repository vs. Release-Repository

Was ist der Unterschied zwischen einem Snapshot Repository und Release Repository?

Dies bezieht sich auf das Einrichten von Repositories (wie Artifactory, Nexus usw.).

80
Dan

Artefakte freigeben

Hierbei handelt es sich um spezifische Zeitpunktversionen. Freigegebene Artefakte werden als solide, stabil und dauerhaft betrachtet, um sicherzustellen, dass Builds, die von ihnen abhängen, im Laufe der Zeit wiederholbar sind. Freigegebene JAR-Artefakte werden mit PGP-Signaturen verknüpft, und Prüfsummen überprüfen sowohl die Authentizität als auch die Integrität des binären Software-Artefakts. Das Central Maven-Repository speichert Release-Artefakte.

Momentaufnahmenartefakte

Momentaufnahmen erfassen eine laufende Arbeit und werden während der Entwicklung verwendet. Ein Snapshot-Artefakt hat sowohl eine Versionsnummer wie „1.3.0“ oder „1.3“ als auch einen Zeitstempel. Ein Snapshot-Artefakt für commons-lang 1.3.0 kann beispielsweise den Namen commons-lang-1.3.0-20090314.182342-1.jar haben.

Entnommen aus refcard

52
Sayat Satybald

Release-Repositorys enthalten Releases und Snapshot-Repositorys halten Snapshots. In maven ist ein Snapshot als Artefakt definiert, dessen Version auf -SNAPSHOT endet. Bei der Bereitstellung wird der Snapshot in einen Zeitstempel umgewandelt. Snapshots sind definitionsgemäß veränderlich, Releases sind unveränderlich. Aus diesem Grund speichert Nexus sie separat, da es Ihnen normalerweise egal ist, ob Sie Schnappschüsse verlieren. Dadurch wird die Snapshot-Bereinigung wesentlich einfacher.

73
Brian Fox

Snapshots sind die Idee, die Versionsnummer als -SNAPSHOTS anzugeben, es ist in der Entwicklung und kann jederzeit geändert werden.

Internes Repository ist das Release-Repository mit fester Versionsnummer. Sie können die SNAPSHOTS ändern. Dieses Artefakt ändert sich jedoch nach der Veröffentlichung nicht.

3
AKT

Normalerweise haben wir in Maven zwei Arten von Builds: 

1) Snapshot-Builds : SNAPSHOT ist die spezielle Version, die die aktuelle Bereitstellungskopie angibt, und keine reguläre, spezifische Version. Maven überprüft die Version für jeden Build im Remote-Repository. Bei den Snapshot-Builds handelt es sich lediglich um Wartungs-Builds.

2) Builds freigeben : Release bedeutet das Entfernen des SNAPSHOT unter der Versions-ID des Builds. Dies sind die regulären Build-Versionen.

Snapshot-Artefakte und Release-Artefakte werden an Snapshot- bzw. Release-Repositorys gesendet.

2
Venky Vungarala

SNAPSHOT bedeutet hier nicht wirklich EINEN Snapshot, der eingefroren ist und sich nicht ändert. SNAPSHOT deckt mehrere Snapshots ab, deren Modifikationen nicht groß genug sind, um durch eine neue Versionsnummer dargestellt zu werden

0
YourBestBet