Abgesehen von der Verwaltung von Abhängigkeiten habe ich wenig Verwendung dafür.
Das liegt daran, dass du es nicht verstehst :) Die Verwaltung von Abhängigkeiten ist nur ein kleiner Teil von Maven, Maven hat wirklich viel mehr. Zitat Maven: Der endgültige Leitfaden :
Maven ist ein Projektmanagement-Tool, das ein Projektobjektmodell, eine Reihe von Standards, einen Projektlebenszyklus, ein Abhängigkeitsmanagementsystem und eine Logik zur Ausführung von Plugin-Zielen in definierten Phasen eines Lebenszyklus umfasst. Wenn Sie Maven verwenden, beschreiben Sie Ihr Projekt anhand eines wohldefinierten Projektobjektmodells. Maven kann dann übergreifende Logik aus einer Reihe von gemeinsamen (oder benutzerdefinierten) Plugins anwenden.
Maven verwendet Konvention vor Konfiguration mit vielen nützlichen Vorgaben (Verzeichnisspeicherorte, ein definierter Lebenszyklus, eine Reihe von allgemeinen Plugins, die wissen, wie man Software baut und zusammenstellt), bietet Maven eine gemeinsame Schnittstelle um ein Projekt zu erstellen (im Gegensatz zu Ant wissen Sie, wie Sie Dinge wie Tests, Paketierung usw. mit jede Projekt, keine Notwendigkeit, das Build-Skript zu öffnen, um herauszufinden, wie es gemacht wird), implementiert Maven Wiederverwendung durch Maven-Plugins (Build-Logik ist aus DRY-Gründen in Plugins eingebettet, Sie müssen sich nicht immer wiederholen, Sie müssen nicht Teile Ihrer Build-Skripte kopieren/einfügen), Maven hat eine Projekt-Objektmodell die es Ihnen ermöglicht, Ihr Projekt durch Metadaten zu beschreiben (dies ermöglicht Abhängigkeitsmanagement, entfernte Repositories, Wiederverwendung von Build-Logik, Tool-Integration, Artefaktsuche...).
Da Maven also eine Lingua franca oder einer gemeinsamen Sprache für das Projektmanagement, der Vergleich von Maven mit Ant (+ Ivy, wenn Sie wollen), Maven mit Buildr, Maven mit Gradle ist wie der Vergleich von Äpfeln mit Orangen, der Vergleich ist einfach irrelevant.
Ist eine solche Kombination üblich? Ich denke daran, sie in meinem Projekt dauerhaft einzusetzen.
Nun, nein, das ist wirklich nicht die Art und Weise, wie Maven die Dinge angeht. Dies mag verlockend erscheinen (weil Sie das Gefühl haben, dass Sie die Kontrolle zurückgewinnen, weil Sie verstehen, was mit Ant passiert), aber in Wirklichkeit wiederholen Sie sich wieder und verlieren alle Vorteile von Maven. Sicher, es gibt eine gewisse Lernkurve mit Maven und ich sage nicht, dass Sie es in einer Nacht lernen werden, aber wenn Sie es einmal verstanden haben, werden Sie die Macht spüren. Ich würde daher empfehlen, es weiter zu versuchen, Fragen auf der Mailingliste oder hier auf SO zu stellen, das Maven Buch zu lesen, etc. Aber geben Sie nicht auf.
1 Stimmen
Vielleicht möchten Sie dieses Community-Wiki einrichten. Wie die ersten beiden Antworten unten zeigen, lieben oder hassen die Leute Maven, und Sie werden sehr unterschiedliche Antworten aus diesen beiden Lagern erhalten.