Плагин Maven Resources

Плагин Maven Resources

1. обзор

В этом руководстве описывается плагинresources, один из основных плагинов инструмента сборки Maven.

Обзор других основных подключаемых модулей см. Вthis article.

2. Цели плагина

The resources plugin copies files from input resource directories to an output directory. Этот плагин преследует три цели, которые отличаются только тем, как указаны ресурсы и выходные каталоги.

Три цели этого плагина:

  • resources – копирует ресурсы, которые являются частью основного исходного кода, в основной выходной каталог

  • testResources копирует ресурсы, которые являются частью исходного кода теста, в выходной каталог теста

  • copy-resources копирует произвольные файлы ресурсов в выходной каталог, требуя от нас указать входные файлы и выходной каталог

Давайте посмотрим на плагинresources вpom.xml:


    maven-resources-plugin
    3.0.2
    
        ...
    

Мы можем найти последнюю версию этого плагинаhere.

3. пример

Предположим, мы хотим скопировать файлы ресурсов из каталогаinput-resources в каталогoutput-resources и исключить все файлы с расширением.png.

Этим требованиям удовлетворяет эта конфигурация:


    output-resources
    
        
            input-resources
            
                *.png
            
            true
        
    

Конфигурация применяется ко всем запускам плагинаresources.

Например, когда цельresources этого плагина выполняется с помощью командыmvn resources:resources, все ресурсы из каталогаinput-resources, кроме файлов PNG, будут скопированы вoutput-resources .

Поскольку по умолчанию цельresources привязана к фазеprocess-resources в жизненном цикле Mavendefault, мы можем выполнить эту цель и все предыдущие фазы, запустив командуmvn process-resourcesс.

В данной конфигурации есть параметр с именемfiltering со значениемtrue. The filtering parameter is used to replace placeholder variables in the resource files.

Например, если у нас есть свойство в POM:


    example

и один из файлов ресурсов содержит:

Welcome to ${resources.name}!

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

Welcome to example!

4. Заключение

В этой быстрой статье мы рассмотрели плагинresources и дали инструкции по его использованию и настройке.

Полный исходный код этого руководства можно найти наover on GitHub.