Strumenti di compilazione Java: Ant vs. Maven [chiuso]


Stavo leggendo questoblog di Kent R. Spillner per quanto riguarda gli strumenti di compilazione java. Anche se ho usato leggermente Ant e Maven, non mi sono impegnato a nessuno dei due seriamente che intendo fare. Il post sul blog che ho collegato è esagerato? Soprattutto, dovrei usare Maven o Ant per un progetto di medie dimensioni ( circa 20K LOC).

Author: Kara, 2013-12-24

1 answers

Dipende davvero. Maven e Ant sono solo approcci diversi: imperativo e dichiarativo (vedi Imperativo vs sistemi di compilazione dichiarativi )

Maven è meglio per gestire le dipendenze (ma Ant va bene anche con loro, se usi Ant+Ivy) e costruisci artefatti. Il principale vantaggio di maven - il suo ciclo di vita. Puoi semplicemente aggiungere azioni specifiche sulla fase corretta, il che sembra abbastanza logico: basta avviare i test di integrazione sulla fase di test di integrazione, ad esempio. Inoltre, lì sono molti plugin esistenti, che può potrebbe quasi tutto. Maven archetype è potente caratteristica, che consente di creare rapidamente il progetto.

Ant è meglio per il controllo del processo di compilazione. Prima della tua prima build devi scrivere che costruisci.XML. Se il tuo processo di compilazione è molto specifico, devi creare script complicati. Per i progetti a lungo termine il supporto di ant-scripts potrebbe diventare davvero doloroso: gli script diventano troppo complicati, le persone, chi li ha scritti, potrebbero lascia il progetto, ecc.

Entrambi usano xml, che potrebbe diventare troppo grande in grandi progetti a lungo termine.

Ad ogni modo, dovresti leggere documentazione specifica (non articoli di odio) su entrambi. Inoltre, c'è ant-maven-plugin, che consente di avviare ant-scripts con maven.

PS Puoi dare un'occhiata a Gradle , che per me potrebbe fornire più libertà di Maven, ma è più facile da usare di Ant.

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