Репозиторий снимков Maven и репозиторий выпусков - PullRequest
85 голосов
/ 09 ноября 2008

В чем разница между снимком хранилищем и релизом хранилищем?

Это относится к настройке хранилищ (например, Artifactory, Nexus и т. Д.)

Ответы [ 5 ]

76 голосов
/ 25 декабря 2008

В репозиториях релизов хранятся релизы, а в репозиториях моментальных снимков - моментальные снимки. В maven снимок определяется как артефакт с версией, заканчивающейся на -SNAPSHOT. При развертывании снимок превращается в метку времени. По определению, снимки изменчивы, релизы неизменяемы. Вот почему Nexus заставляет вас хранить их отдельно, потому что обычно вам все равно, если вы потеряете снимки, но вам будет важно, если вы потеряете релизы. Это значительно упрощает очистку моментальных снимков.

55 голосов
/ 18 апреля 2014

Артефакты выпуска

Это конкретные релизы на определенный момент времени. Выпущенные артефакты считаются надежными, стабильными и бессрочными, чтобы гарантировать, что сборки, зависящие от них, будут повторяться с течением времени. Выпущенные JAR-артефакты связаны с сигнатурами PGP, а контрольные суммы проверяют подлинность и целостность двоичного программного артефакта. Хранилище Central Maven хранит артефакты выпуска.

Артефакты снимков

Снимки фиксируют незавершенную работу и используются во время разработки. Артефакт моментального снимка имеет номер версии, например «1.3.0» или «1.3», и метку времени. Например, артефакт снимка для commons-lang 1.3.0 может иметь имя commons-lang-1.3.0-20090314.182342-1.jar.

взято с refcard

3 голосов
/ 19 января 2016

Снимки - это хорошая идея дать номер версии как -SNAPSHOTS, она находится в стадии разработки, она может измениться в любое время.

Внутренний репозиторий - репозиторий релизов с фиксированным номером версии. Вы можете изменить SNAPSHOTS, но этот артефакт не изменится после его освобождения.

3 голосов
/ 16 сентября 2014

Обычно в Maven у нас есть два типа сборок:

1) Сборки моментальных снимков : SNAPSHOT - это специальная версия, которая указывает текущую копию развертывания, а не обычную специальную версию. Maven проверяет версию для каждой сборки в удаленном хранилище. Сборки моментальных снимков - это не что иное, как сборки разработки.

2) Выпуск сборок : выпуск означает удаление SNAPSHOT с идентификатором версии для сборки. Это обычные версии сборки.

Артефакты моментальных снимков и артефакты выпуска переносятся в моментальный снимок, соответственно выпускают репозитории.

0 голосов
/ 08 августа 2017

SNAPSHOT здесь на самом деле не означает ОДИН снимок, который заморожен и не изменится, SNAPSHOT охватывает несколько снимков, модификации которых недостаточно велики, чтобы быть представленными новым номером версии

...