Мы некоторое время используем Maven в нашем проекте и хотим немного автоматизировать процесс выпуска. мы пришли к следующей идее, так что версия будет поддерживаться разработчиками или в SCM, а не в инструменте DevOps, как jenkins / bamboo.
Любой, кто следует ниже, обрабатывает вместо установки значения интерполяции в аргументах как «mvn». install -Dapp.version = 1.0.0-SNAPSHOPT "
Процесс, которому мы хотели бы следовать, заключается в предоставлении версии проекта Maven через внешний файл свойств.
Давайте предположим следующее частичное POM. xml выдержка как пример.
<project>
<groupId>com.home.diary</groupId>
<artifactId>journal</artifactId>
<version>${app.version}</version>
<packaging>war</packaging>
</project>
давайте предположим, что у меня есть файл version.properties в моем SCM со следующим содержимым
app.version=2.0.0-RELEASE
во время выполнения цели mvn
mvn install
Я хочу, чтобы артефакт был сгенерирован как
journal-2.0.0-RELEASE
Я пытался использовать плагин properties-maven-plugin
из org.codehaus.mojo
, как описано здесь Как прочитать файл внешних свойств в Maven , но он не работает.
Кто-нибудь делал это? не могли бы вы поделиться своей реализацией / идеями?