Многомодульный проект Maven — копирование всех зависимостей в один tar.gz

Я хочу извлечь все зависимости из каждого модуля моего проекта maven и вставить их в один файл tar.gz с помощью плагина maven-assembly.

В настоящее время у меня есть настройка pom в качестве родителя для всех модулей. Моя идея состояла в том, чтобы использовать плагин maven-dependency-plugin для копирования всех зависимостей в одну папку в родительском каталоге, однако, когда я использую

<configuration>
    <outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>

Зависимости копируются в каталог сборки модулей. Есть ли способ установить этот выходной каталог в один внутри родительского проекта?


person Carl Robinson    schedule 20.11.2015    source источник
comment
Возможный дубликат Как использовать плагин сборки Maven с многомодульный проект maven   -  person question_maven_com    schedule 20.11.2015


Ответы (1)


Вы идете по неправильному пути.

Вместо того, чтобы создавать этот архив внутри родительского POM, вы должны создать другой модуль, который будет отвечать за его создание. Этот новый модуль будет иметь зависимости от всех остальных модулей.

Для создания архива необходимо использовать файл maven-assembly-plugin. Я настоятельно рекомендую вам прочитать Главу 8. Сборки Maven книги Maven. чтобы вы начали использовать сборки. По сути, сборка создается с помощью дескриптора сборки. . В вашем случае вам нужно будет настроить этот дескриптор для использования формата tar.gz.

person Tunaki    schedule 20.11.2015