Maven: использование подключаемого модуля Exec Maven и чтение свойств проекта

У меня есть ситуация, когда я должен прочитать определенный файл свойств, а затем вызвать внешнюю программу.

Однако кажется, что если я вызываю «mvn exec: exec», фаза проверки не вызывается, и поэтому свойства не читаются.

И в моем текущем сценарии я не могу привязать exec: exec к какой-либо конкретной фазе (и это потому, что все другие фазы имеют очень конкретные задачи, о которых нужно позаботиться, и то, что я пытаюсь выполнить с помощью exec: exec не сопоставляется ни с одним из эти фазы. Это скорее отдельная вещь, которую я пытаюсь сделать).

Единственный обходной путь, который я нашел, - это вызвать mvn validate exec:exec, который работает, но мой вопрос:

  1. Является ли хорошей идеей смешивать фазу и цель как часть выполнения maven?
  2. Или есть способ заставить плагин exec читать свойства?

person Sujay    schedule 01.08.2013    source источник


Ответы (1)


могли бы вы использовать профили, чтобы привязать его к определенной фазе, но только в определенных обстоятельствах / определенных средах?

http://maven.apache.org/guides/introduction/introduction-to-profiles.html

Вы можете использовать переменные пользователя или среды или явно использовать определенный профиль, чтобы активировать свой выбор профиля. Затем в этом новом профиле вы можете переопределить, чтобы фаза была полностью в вашем распоряжении.

По-настоящему создание собственной новой фазы жизненного цикла кажется возможным, хотя и непростым:

https://community.jboss.org/wiki/CreatingACustomLifecycleInMaven?_sscc=t

честно говоря, я бы придерживался вашей командной строки, вызывая validate, а затем exec. Я не знаю ни о каких побочных эффектах, и, как вы говорите, это просто локальная отдельная задача.

person Graham Griffiths    schedule 01.08.2013
comment
Спасибо за ответ, Грэм. Я вообще-то думал об использовании отдельного профиля. Единственное, что мне не нравится в этом, - это то, что я дублирую свой плагин свойств (один раз там, где он сейчас, а другой в профиле). Я надеялся увидеть, есть ли более чистое решение, идущее по этому пути. - person Sujay; 01.08.2013