В Maven есть ли способ заменить свойства в самом файле POM, такие как файл Ant build.properties? - PullRequest
1 голос
/ 10 марта 2012

Я не говорю о плагине свойств Maven или о фильтрации ресурсов.Я хочу, чтобы Maven заменил свойства в самом POM.Например, допустим, у меня есть несколько POM, которые ссылаются на номер версии конкретной зависимости.Я хочу иметь возможность загрузить в один файл свойств для каждого из этих POM, а затем изменить значения один раз.Затем Maven прочитает файл свойств перед обработкой POM и заменит соответственно.Я полагаю, что именно так Ant делает это за один проход, и свойства становятся неизменными в build.xml.

Ответы [ 2 ]

1 голос
/ 14 марта 2012

Вы спрашиваете о многомодульной сборке, которая часто доходит до номера версии. Но простой ответ на этот вопрос: используйте плагин релиза maven, чтобы вам не приходилось иметь дело с номерами версий. Или вы можете использовать version-maven-plugin для элегантной обработки их изменений. И лучше не использовать свойства для версий родителей в pom (если они будут работать так, как вы описали).

1 голос
/ 11 марта 2012

Вы можете заменить свойства в командной строке, если это соответствует вашей ситуации. Я изменяю версию своего проекта в pom в командной строке (на самом деле через сценарии NAnt). Например:

mvn deploy -Dproject.version=1.00.00.0-Something-SNAPSHOT

Вы упомянули, что хотите изменить свойство, которое находится в родительских тегах. В maven 2 (не уверен в maven 3) что-либо в родительских тегах не может быть свойством и должно быть фактическими значениями Maven не оценивает свойства в родительских тегах.

...