Exécuter une tâche Ant avec Maven

1. Introduction

Maven et Ant sont tous deux des outils d'automatisation de construction bien connus pour Java. Bien que la plupart du temps, nous n'utilisons qu'un seul d'entre eux, il existe des cas où l'utilisation des deux ensemble a du sens.

Un cas d'utilisation courant est lorsque vous travaillez sur un projet hérité qui utilise Ant, et nous voulons introduire Maven progressivement tout en conservant certaines tâches Ant existantes.

Dans ce didacticiel, nous verrons comment procéder à l'aide du plug-in Maven AntRun.

2. Maven AntRun Plugin

Maven AntRun Plugin nous permet d'exécuter des tâches Ant dans Maven.

2.1. Ajout du plugin

Pour utiliser ce plugin, nous devons l'ajouter aux plugins de construction de notre projet Maven:

 org.apache.maven.plugins maven-antrun-plugin 1.8  ...  

La dernière version du plugin peut être trouvée sur Maven Central (bien qu'elle n'ait pas été mise à jour depuis longtemps).

2.2. Exécutions de plugins

Comme pour tout autre plugin Maven, pour utiliser le plugin AntRun, nous devons définir des exécutions.

Dans l'exemple ci-dessous, nous définissons une exécution liée à la phase de package de Maven , qui compressera le fichier JAR final à partir du répertoire cible du projet:

 org.apache.maven.plugins maven-ant-run-plugin 1.8   zip-artifacts package  run         

Pour exécuter le plugin, nous exécutons la commande:

mvn package

Puisque nous avons déclaré que notre plugin s'exécutait pendant la phase de package de Maven , l'exécution de l' objectif de package de Maven exécutera la configuration de notre plugin ci-dessus.

3. Exemple d' utilisation build.xml fichier

En plus de nous permettre de définir des cibles Ant dans la configuration du plugin, nous pouvons également utiliser un fichier Ant build.xml existant .

3.1. build.xml

Voici un exemple de fichier Ant build.xml d'un projet avec une cible définie pour télécharger des fichiers zip depuis le répertoire de base du projet vers un serveur FTP:

 Project Description ...        

3.2. Configuration du plugin

Pour utiliser le fichier build.xml ci-dessus , nous définissons l'exécution dans notre déclaration de plugin:

 deploy-artifact install  run         

Puisque la tâche ftp n'est pas incluse dans ant.jar , nous devons ajouter les dépendances optionnelles d'Ant à notre configuration de plugin:

  ...    commons-net commons-net 1.4.1   org.apache.ant ant-commons-net 1.8.1   

Pour exécuter le plugin, nous exécutons la commande:

mvn install

4. Conclusion

Dans ce court article, nous avons discuté de l'exécution de tâches Ant avec le plugin AntRun de Maven . Même s'il s'agit d'un plugin très simple, n'ayant qu'un seul objectif, ce plugin peut s'avérer efficace dans les projets et les équipes qui préfèrent l'utilisation d'Ant pour des instructions de construction spécifiques.

Et, si vous voulez en savoir plus sur Ant et Maven, vous pouvez lire notre article comparant ces deux - avec Gradle.