Лучше всего создать архетип zip с помощью подключаемого модуля maven из файла project.basedir или project.build.directory? - PullRequest
0 голосов
/ 25 октября 2019

Я работаю над проектом, и мне нужно сгенерировать архетип zip. Внутри каталога src есть файл component.json, который мне нужно скопировать в целевой каталог и поместить в архетип .zip. Но перед его копированием необходимо обновить некоторые значения внутри этого файла, и это должно происходить каждый раз, когда я собираю проект.

Причина, по которой мы обновляем файл component.json, заключается в том, что мы хотим установить правильную версиюи тег изображения компонента, чтобы люди, которые собираются использовать этот компонент, знали, с какой версией и тегом изображения они пользуются.

В настоящее время файл, который я использую для создания архива .zip, находится в каталоге src.

Существуют некоторые проблемы с этим текущим подходом.

1.- Каждый раз, когда я строю проект, git помечает его как изменение, которое будет зафиксировано. Я хочу избежать этого.

2.- Я использую плагин maven-resources-plugin для копирования файла component.json в каталог project.build.directory. На данный момент я думаю, что после того, как файл component.json скопирован в каталог project.build.directory, обновите этот файл вместо того, который находится под src, и сгенерируйте архетип .zip для этого файла.

3.- Что касается пункта 2, у меня возникает еще одно сомнение, я не знаю, как внутренне работает maven о том, какой шаг или плагин будет выполняться первым, тот, который копирует файл в файл project.build.directory. или тот, который генерирует архетип .zip.

Итак, в основном я хочу услышать ваши мысли о том, как лучше всего справиться с этим и вашим предыдущим опытом в аналогичной ситуации.

Спасибо

1 Ответ

0 голосов
/ 25 октября 2019

Самый важный момент: никогда не позволяйте Maven генерировать что-либо вне каталога target. Это вызывает всевозможные проблемы с Git и поддерживает чистый проект.

Сборка Maven следует жизненному циклу Maven (https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html) Здесь вы можете увидеть порядок различных фаз и выбрать правильныйфаза для вашей манипуляции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...