Мейвен:Как создать сборку с артефактами моментальных снимков без имени файла временных меток?

StackOverflow https://stackoverflow.com/questions/2516860

Вопрос

У меня есть репозиторий, содержащий артефакты моментальных снимков с метками времени.

Я хочу создать сборку, содержащую зависимости.Это работает нормально.Но имена артефактов содержат метку времени.Поэтому мне интересно, как удалить метку времени из имени файла только для сборки.

я использовал это набор зависимостей:

<outputFileNameMapping>${artifact.artifactId}-${artifact.version}.${artifact.extension}</outputFileNameMapping>

Но версия, похоже, уже содержит метку времени.Так есть ли шанс получить 1.1.1-МОНИТОР вместо 1.1.1-20100323.071348-182?

Я использую версию 2.2-beta-4 плагина maven-assembly-plugin.

Это было полезно?

Решение

Не могли бы вы попробовать следующее для outputFileNameMapping:

${artifactId}-${baseVersion}.${extension}

По таким вопросам, как СБОРКА-67, СБОРКА-91:

С использованием ${baseVersion} для случаев, когда вы хотите сохранить имя -SNAPSHOT, плагин сохраняет возможность использовать ${version} для именования timestamp-buildnumber, которое полезно для описания точной версии библиотеки, включенной в сборку.

Обновлять: После отзывов ОП точный синтаксис (не был в этом полностью уверен):

${artifact.artifactId}-${artifact.baseVersion}.${artifact.extension}

Другие советы

Я столкнулся с аналогичной проблемой при попытке собрать пакет с плагином сборки, который содержал папку с номером версии (я упаковываю WSDL и XSD).

Обходной путь, который я нашел, довольно прост: я помещаю фактический номер версии в свойство (например,1.0), что делает его доступным в файле Bundle.xml для плагина сборки и устанавливает версию pom:

<version>${service.version}-SNAPSHOT</version>

Таким образом, на содержимое моего пакета не влияет маркер SNAPSHOT, в частности, он не изменяется при выпуске.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top