2010-12-10 3 views
2

Ich möchte einige Phasen optional sagen, wenn Kompilierung fehlschlägt oder Test fehlschlägt und andere Phasen wie Checkstyle, Findbugs abzuschließen. Kann ich das in Maven tun, ich habe es in Ameise nicht sicher gemacht, wie man in Maven gehtMaven machen Phase konditional

Antwort

2

Maven hat keine Mittel zum dynamischen Hinzufügen oder Entfernen von Zielen oder Lebenszyklusphasen. Ja, Sie könnten wahrscheinlich Funktionalität wie diese erreichen, indem Sie ein Plugin schreiben und den Mechanismus <extension> verwenden, aber Sie würden die Standardkonventionen brechen.

Aber alle Plugins, die Sie darüber reden, haben Parameter, die Sie nicht die Build nicht festlegen:

Mein Vorschlag wäre, ein Profil zu haben, wo Sie Konfigurationen mit all diesen Parametern hinzufügen, so dass Sie alle mit einem einzigen Befehl umschalten können.

+0

Dies scheint die eleganteste Lösung für mich zu sein, während Maven Konventionen immer noch treu bleiben. –

0

Maven ermutigen Sie, mit "Ziel-zu-Phase-Zuweisungen" statt expliziter Anweisungen darüber, wann was ausgeführt wird, zu spielen. Maven lifecycle ist Ihre Roadmap, die Sie nicht ändern können. Und auf jedem Meilenstein (Phase) in dieser Roadmap können Sie bestimmte Operationen (Ziele) tun. Mit anderen Worten, Sie müssen Ant vergessen und anfangen, Maven zu verwenden :)