Introduction
Le Maven License Plugin est utilisé pour gérer les license dans un projet Maven.
On a supprimé les fichiers de descriptions dépréciés en 2.4.
Le fichier de consolidation des third-party manquants a été amélioré :
- prise en compte de dépendences exotiques avec des types spéciaux (zip et autres) - regénération du fichier si nécessaire - suppression des dépendences qui ne sont plus utilisés dans le projet
Le projet migre sur Codehaus sous le nom de license-maven-plugin.
On espère que vous continurez à l'utiliser sous la forge de codehaus.
Le projet est désormais ici : http://mojo.codehaus.org/license-maven-plugin.
On voudrait ne plus utiliser les fichiers de descriptions d'en-tête introduits précédemment. Pour ce faire, on ajoute un nouveau mode (qui est déclanché automatiquement si un tel fichier n'est pas trouvé).
Le principe est assez simple : on fournit un ou plusieurs répertoire source (dit roots) à partir duquel on va scanner tous les fichiers. Pour tout fichier dont l'extension est connu on met à jour l'en-tête si nécessaire.
Dees valeurs par défaut sont prévues pour couvrir l'essentiel des cas : src, target/generated-sources and target/processed-sources.
Il est aussi possible d'include au excludes des répertoires via les paramètres includes et excludes.
La liste complête des extensions connues peuvent être trouvées en invoquant le goal comment-style-list goal.
Ce nouveau mode remplacera définitivement l'ancien mode en version 3.
Pour plus d'information, consulter la nouvelle page Configurer le goal update-file-header.
Utilisation de maven-helper-plugin 1.2.6 (amélioration de la gestion de l'encoding si aucun fournit).
Le header de license est un commentaire ajouté en haut des fichiers source.
Pour détecter le header dans les fichiers, nous utilisons la technologie processor, avec les tags
# % L Contenu # L %
Les header est composé de deux parties :
Voici un example :
/* * # % L * Plugin maven de changement de license * %% * Copyright (C) 2008 - 2009 CodeLutin * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Lesser Public License for more details. * * You should have received a copy of the GNU General Lesser Public * License along with this program. If not, see * <http://www.gnu.org/licenses/lgpl-3.0.html>. * # L % */
Le plugin a les goals suivants :
Les instructions sur l'utilsiation du plugin peuvent être trouvées sur la page d'utilisation