Plugin Maven Resources

Plugin Maven Resources

1. Vue d'ensemble

Ce tutoriel décrit le pluginresources, l'un des principaux plugins de l'outil de construction Maven.

Pour un aperçu des autres plugins principaux, reportez-vous àthis article.

2. Objectifs du plugin

The resources plugin copies files from input resource directories to an output directory. Ce plugin a trois objectifs, qui ne diffèrent que par la manière dont les ressources et les répertoires de sortie sont spécifiés.

Les trois objectifs de ce plugin sont:

  • resources – copie les ressources qui font partie du code source principal dans le répertoire de sortie principal

  • testResources copie les ressources qui font partie du code source du test dans le répertoire de sortie du test

  • copy-resources copie des fichiers de ressources arbitraires dans un répertoire de sortie, nous obligeant à spécifier les fichiers d'entrée et le répertoire de sortie

Jetons un coup d'œil au pluginresources dans lespom.xml:


    maven-resources-plugin
    3.0.2
    
        ...
    

Nous pouvons trouver la dernière version de ce pluginhere.

3. Exemple

Supposons que nous souhaitons copier les fichiers de ressources du répertoireinput-resources vers le répertoireoutput-resources and nous voulons exclure tous les fichiers se terminant par l'extension.png.

Ces exigences sont satisfaites de cette configuration:


    output-resources
    
        
            input-resources
            
                *.png
            
            true
        
    

La configuration s'applique à toutes les exécutions du pluginresources.

Par exemple, lorsque l'objectifresources de ce plugin est exécuté avec la commandemvn resources:resources, toutes les ressources du répertoireinput-resources, à l'exception des fichiers PNG, seront copiées dansoutput-resources .

Puisque, par défaut, l'objectifresources est lié à la phaseprocess-resources dans le cycle de vie de Mavendefault, nous pouvons exécuter cet objectif et toutes les phases précédentes en exécutant la commandemvn process-resources.

Dans la configuration donnée, il existe un paramètre nomméfiltering avec la valeurtrue. The filtering parameter is used to replace placeholder variables in the resource files.

Par exemple, si nous avons une propriété dans le POM:


    example

et l'un des fichiers de ressources contient:

Welcome to ${resources.name}!

alors la variable sera évaluée dans la ressource de sortie et le fichier résultant contiendra:

Welcome to example!

4. Conclusion

Dans cet article rapide, nous avons passé en revue le pluginresources et donné des instructions sur son utilisation et sa personnalisation.

Le code source complet de ce didacticiel se trouve àover on GitHub.