2009-11-05 2 views
0

Мой проект зависит от сторонней библиотеки, которая имеет только моментальные снимки в своем хранилище maven (без релизов, что кажется странным, но так оно и есть). Каждый раз, когда я делаю полную сборку (и очищаю свой локальный репозиторий .m2), maven, очевидно, пойдет и возьмет последнюю сборку.maven snapshot repositories

Мой репозиторий проксирует тот, у которого есть снимки, есть ли в любом случае, чтобы сообщить моему репозиторию прекратить вытягивание новых версий и в основном просто сохранить текущую версию? Я действительно не хочу каждую ночь собирать новый сбор.

Единственная мысль, которую я имел, - это вручную обозначить текущие версии, но есть довольно много зависимостей, и все они зависят от версий SNAPSHOT. Есть ли более простой способ сделать это?

спасибо,

Джефф

ответ

2

Посмотрите на эту запись в блоге от Sonatype: Best Practices for 3rd Party Snapshot Dependencies

Я обычно установить файл на мой прокси-сервер или локальный репозиторий в качестве определенной версии, а затем обратитесь к этой версии. Тогда вы не рискуете исчезнуть из-под вас снимок.

+0

Фактически, избавление от моментального снимка - это, безусловно, маршрут, который я хочу принять. Библиотеки, которые у меня есть, не облегчают работу, так как их полное бинарное распространение на самом деле не поставляется с POM. Но с небольшой работой я смогу установить это без зависимости от моментального снимка. Благодарю. –

+0

mvn deploy: deploy-file создаст pom. – SamBeran

0

запустить сборку с опцией -U (-update-snapshots) ли? Если да, попробуйте.

Else, если есть только эта зависимость от репозитория, вы можете просто отключить этот репозиторий, и Maven будет продолжать использовать последнюю версию, найденную в локальном репозитории.

0

Пытались ли вы указать <updatePolicy> со стратегией never в <snapshots> элемент вашего <pluginRepository>? См. Plugin Repositories и Repositories.

0

Используйте опцию --no-snapshot-updates для подавления обновлений SNAPSHOT.

например.

$ mvn --no-snapshot-updates compile