Почему многие версии зависимостей Maven заканчиваются SNAPSHOT? - PullRequest
4 голосов
/ 27 февраля 2011

Есть ли какое-то особое значение для снимка в версии Maven?

Ответы [ 2 ]

7 голосов
/ 27 февраля 2011

Да

SNAPSHOT - означает, что это не финальная версия. Код все еще разрабатывается, и артефакт не выпущен. Это может иметь ошибки.

От: http://maven.apache.org/guides/getting-started/index.html

версия Этот элемент указывает версию артефакта, созданного проектом. Maven поможет вам в управлении версиями, и вы часто будете видеть указатель SNAPSHOT в версии, которая указывает, что проект находится в состоянии разработки. Мы обсудим использование снимков и их работу в этом руководстве.

Это даже длинная статья: http://sonatype.com/books/maven-book/reference/pom-relationships-sect-pom-syntax.html см. Под 3.3.1.2. Версии SNAPSHOT заголовок

Зачем вам это использовать? Версии SNAPSHOT используются для проектов в стадии активной разработки. Если ваш проект зависит от программного компонента, который находится в активной разработке, вы можете зависеть от выпуска SNAPSHOT, и Maven будет периодически пытаться загрузить последний снимок из репозитория при запуске сборки. Точно так же, если в следующем выпуске вашей системы будет версия «1.4», ваш проект будет иметь версию «1.4-SNAPSHOT», пока она не будет официально выпущена.

1 голос
/ 27 февраля 2011

Любая версия проекта с SNAPSHOT означает, что она является сборкой разработки, а не выпуском, и, как правило, основана на том, что является новейшим коммитом в репозитории.

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

...