Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide
Consultez :
  • Les documents de reference sur le projet original
  • Les sources de la traduction fr sur GitHub
  • maven


    12.3. Usage du plugin Maven Help

    Tout au long de ce livre, nous allons introduire des plugins Maven, parler de fichiers Maven Project Object Model (POM), de fichiers de settings et de profils. Parfois vous aurez besoin d'un outil vous permettant de connaître les modèles utilisés par Maven et les goals disponibles pour un plugin donné. Le plugin Maven Help vous permet de lister tous les profils Maven actifs, d'afficher un POM effectif, les settings effectifs ou les attributs d'un plugin Maven.

    Note

    Pour une vision plus conceptuelle du POM et des plugins, lisez le Chapitre 3, Mon premier projet avec Maven.

    Le plugin Maven Help a quatre goals. Les trois premiers goals — active-profiles, effective-pom et effective-settings — décrivent un projet particulier et doivent être exécutés depuis le répertoire racine d'un projet. Le dernier goal — describe — est un peu plus complexe, il affiche des informations sur un plugin ou le goal d'un plugin. Voici des informations générales sur ces quatre goals :

    help:active-profiles

    Liste les profils (du projet, de l'utilisateur, globaux) qui sont actifs pour le build courant.

    help:effective-pom

    Affiche le POM effectif pour le build en cours, en prenant en compte les profils activés.

    help:effective-settings

    Affiche la configuration calculée des settings pour le projet, en prenant en compte la configuration de l'utilisateur et les modifications apportées par les profils actifs.

    help:describe

    Décrit les attributs d'un plugin. Il n'est pas nécessaire de l'exécuter dans le répertoire d'un projet. Vous devez fournir au moins le groupId et le artifactId du plugin dont vous voulez la description.

    12.3.1. Décrire un plugin Maven

    Une fois que vous commencez à utiliser Maven, vous passerez le plus clair de votre temps à rechercher des informations sur les plugins Maven. Comment fonctionnent les plugins ? Quels sont les paramètres de configuration ? Quels sont les goals ? Vous utiliserez fréquemment le goal help:describe pour obtenir ce type d'information. Le paramètre plugin vous permet de spécifier le plugin sur lequel vous voulez des informations, en passant son préfixe (par exemple maven-help-plugin ou help) ou son nom complet groupId:artifact[:version], la version étant optionnelle. Par exemple, la commande suivante utilise le goal describe du plugin Maven Help pour afficher des informations sur le plugin Maven Help.

    $ mvn help:describe -Dplugin=help
    ...
    Group Id:  org.apache.maven.plugins
    Artifact Id: maven-help-plugin
    Version:     2.0.1
    Goal Prefix: help
    Description:
    
    The Maven Help plugin provides goals aimed at helping to make sense out of
        the build environment. It includes the ability to view the effective
        POM and settings files, after inheritance and active profiles
        have been applied, as well as a describe a particular plugin goal to give 
        usage information.
    ...
    

    L'exécution du goal describe en passant le paramètre plugin a affiché les coordonnées Maven du plugin, le préfixe du goal et une description succincte du plugin. Même si ces informations sont utiles, la plupart du temps on voudra en savoir un peu plus. Pour afficher la liste des goals avec leurs paramètres grâce au plugin Help, il faut exécuter le goal help:describe avec le paramètre full comme ci-dessous :

    $ mvn help:describe -Dplugin=help -Dfull
    ...
    Group Id:  org.apache.maven.plugins
    Artifact Id: maven-help-plugin
    Version:     2.0.1
    Goal Prefix: help
    Description:
    
    The Maven Help plugin provides goals aimed at helping to make sense out of
        the build environment. It includes the ability to view the effective
        POM and settings files, after inheritance and active profiles
        have been applied, as well as a describe a particular plugin goal to 
        give usage information.
    
    Mojos:
    
    ===============================================
    Goal: 'active-profiles'
    ===============================================
    Description:
    
    Lists the profiles which are currently active for this build.
    
    Implementation: org.apache.maven.plugins.help.ActiveProfilesMojo
    Language: java
    
    Parameters:
    -----------------------------------------------
    
    [0] Name: output
    Type: java.io.File
    Required: false
    Directly editable: true
    Description:
    
    This is an optional parameter for a file destination for the output of 
    this mojo...the listing of active profiles per project.
    
    -----------------------------------------------
    
    [1] Name: projects
    Type: java.util.List
    Required: true
    Directly editable: false
    Description:
    
    This is the list of projects currently slated to be built by Maven.
    
    -----------------------------------------------
    
    This mojo doesn't have any component requirements.
    ===============================================
    
    ... removed the other goals ...
    

    Cette option est fort utile pour découvrir un plugin, tous ses goals et leurs paramètres. Mais parfois on veut encore plus d'informations. Pour obtenir les informations sur un unique goal, renseignez le paramètre mojo en plus du paramètre plugin. La commande suivante liste l'ensemble des informations sur le goal compile du plugin Compiler.

    $ mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull