Exécuter une tâche Ant avec Maven
1. introduction
Maven et Ant sont deux outils d’automatisation de la construction bien connus pour Java. Bien que la plupart du temps, nous n'utilisons qu'un seul d'entre eux, il y a des cas où il est logique d'utiliser les deux ensemble.
A common use case is when working on a legacy project that uses Ant, and we want to introduce Maven gradually tout en gardant en place certaines tâches Ant existantes.
Dans ce didacticiel, nous expliquerons comment procéder à l'aide du plug-in Maven AntRun.
2. Plugin MavenAntRun
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 compilation de notre projet Maven:
org.apache.maven.plugins
maven-antrun-plugin
1.8
...
La dernière version du plugin peut être trouvée sur leMaven 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 aupackage phase 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 lançons la commande:
mvn package
Puisque nous avons déclaré que notre plugin s'exécutait pendant la phasepackage de Maven, l'exécution de l'objectifpackage de Maven exécutera notre configuration de plugin ci-dessus.
3. Exemple d'utilisation du fichierbuild.xml
En plus de nous permettre de définir des cibles Ant dans la configuration du plugin, nous pouvons également utiliser un fichier Antbuild.xml existant.
3.1. build.xml
Voici un exemple de fichier Antbuild.xml d'un projet avec une cible définie pour télécharger des fichiers zip du répertoire de base du projet vers un serveur FTP:
Project Description
...
3.2. Configuration du plugin
Pour utiliser le fichierbuild.xml ci-dessus, nous définissons l'exécution dans notre déclaration de plugin:
deploy-artifact
install
run
Étant donné que la tâcheftp n’est pas incluse dansant.jar, nous devons ajouter les dépendances facultatives de Ant à la configuration de notre plugin:
...
commons-net
commons-net
1.4.1
org.apache.ant
ant-commons-net
1.8.1
Pour exécuter le plugin, nous lançons la commande:
mvn install
4. Conclusion
Dans ce court article, nous avons discuté de l'exécution de tâches Ant avec le pluginAntRun 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 nosarticle, en comparant ces deux - avec Gradle.