Freitag, 3. April 2009

Ant vs. Maven

Die Frage nach den richtigen Build-Tool. Ja gibt es da überhaupt? Ich habe jetzt über viele Jahre mit Ant gearbeitet und damit auch komplexe Projekte gebaut. Einige Highlights: Integration von C++, Deployment zu verschiednen Tomcat-Instancen, automatische Adaptation an Kunden und parallele Ausführung von Build-Teilen. Ich habe ein gutes Verständinis von dem was Ant kann und wie Ant funkioniert. Etwas was immer wiederkehrte war, das ich zwischen den verschiednen build.xml Dateien Code hin und her kopierte und das ich gleichzeitig begann die Projektstruktur und den Build-Prozess zu vereinheitlichen. Dann kam Maven. Die ersten frühen Versuche schlugen fehl. Die Gründe dafür waren die andere Philosophie von Maven (Convention over Configuration), die Intrasparenz was wann passiert und die Integration in Eclipse erschien mir nich so hilfreich. Ich blieb erst mal bei Ant.
Das nächste Erlebnis war auch nicht viel Besser, trotzdem versuchte ich es noch ein mal. Ich migrierte ein größeres Projekt von Ant zu Maven. Ja es funktionierte. Dafür benutzte ich das Eclipse-Plugin m2eclipse. Alles gut? Ja, aber ich hätte da noch ein paar kleine Wünsche:
  • Einfachere Integration fremder Jar's in das Projekt
  • Einfache Übernahme der Maven-Konfiguration zwischen verschiedenen Rechnern
  • Bessere, einfachere Suche nach Jar's (Dependencies)
  • Automatische Mirror-Konfiguration
  • Verbinden der Konsolenausgaben (Fehler) mit Eclipse
  • Automatisches Deployment von War's via Tomcat Manager
Mein Fazit, ich werde weiter auf Maven setzen und spezielle Dinge (Projekt-Adaptation) mit Ant erledigen.

Hier noch eine kleine Ant-Referenz:

Keine Kommentare:

Kommentar veröffentlichen