Outils de construction Java: Ant vs Maven [fermé]


Je lisais ce blog par Kent R. Spillner concernant java outils de construction. Bien que j'ai légèrement utilisé Ant et Maven, je ne me suis engagé à aucun des deux sérieusement ce que j'ai l'intention de faire. Le billet de blog que j'ai lié est-il exagéré? Plus important encore, dois-je utiliser Maven ou Ant pour un projet de taille moyenne ( environ 20K LOC).

Author: Kara, 2013-12-24

1 answers

Cela dépend vraiment. Maven et Ant ne sont que des approches différentes: impératif et déclaratif (voir Impératif vs Systèmes de construction déclaratifs)

Maven est meilleur pour gérer les dépendances (mais Ant est ok avec eux aussi, si vous utilisez Ant+Ivy) et construire des artefacts. Le principal avantage de maven - son cycle de vie. Vous pouvez simplement ajouter des actions spécifiques sur la phase correcte, ce qui semble assez logique: lancez simplement vos tests d'intégration sur la phase de test d'intégration par exemple. Aussi, il n'y il y a beaucoup de plugins existants, qui peuvent presque tout. Maven archetype est une fonctionnalité puissante, qui vous permet de créer rapidement un projet.

Ant est meilleur pour contrôler le processus de construction. Avant votre première construction, vous devez écrire vous construire.XML. Si votre processus de construction est très spécifique, vous devez créer des scripts compliqués. Pour les projets à long terme, le support des scripts ant peut devenir très douloureux: les scripts deviennent trop compliqués, les gens, qui les a écrits, pourraient quitter le projet,etc.

Les deux utilisent xml, ce qui pourrait devenir trop gros dans les grands projets à long terme.

Quoi qu'il en soit, vous devez lire de la documentation spécifique (pas des articles haineux) sur les deux. En outre, il existe un plugin ant-maven, qui permet de lancer des scripts ant avec maven.

P.S. Vous pouvez jeter un oeil surGradle , qui pour moi pourrait fournir plus de liberté que Maven, mais est plus facile à utiliser que Ant.

 51
Author: arghtype, 2017-05-23 12:10:28