Frage

Ich habe einen speziell angefertigten Ant Maven2 Plug-in. Ich möchte eine andere Maven Plug-in rufen insbesondere die Fracht Maven2 Plug-in sofort nach dem benutzerdefinierten Ant-Plug-in erfolgreich abgeschlossen. Allerdings mag ich nicht das Cargo-Plug-in zu einem anderen Ziel oder Phase befestigen. Gibt es eine Möglichkeit, sie hintereinander laufen zu lassen, ohne dass eine Batch-Skript zu schreiben? Gibt es weg die benutzerdefinierten Ant-Plug-in Call zu haben, um Cargo-Plug-in?

War es hilfreich?

Lösung

Sehen Sie diese Diskussion: Ant-Task . So könnten Sie wahrscheinlich:

  • rufen Sie das Cargo-Ant-Task von Ihrem Ant mojo (ich denke, dass Sie nur die Ladung JARs in Ihrem Plugins Classpath müssen);

  • umschreiben Ihre Ant mojo in Java, und rufen Sie den Cargo-API (Sie würden wollen, an den Quellen der Cargo-Plugin sehen).

Andere Tipps

Das Ant-Skript, dass die Maven-ant-Plugin ist nicht wirklich bewusst Maven als solche ausführt; Dieses Plugin ist für die Abwärtskompatibilität mit benutzerdefinierten Ant Aufgaben konzipiert. Ich kann nicht denken Sie an eine saubere Art und Weise zu tun, was Sie wollen, obwohl es kann eine Art von Hack sein, dass Sie es tun können.

Es sollte auch möglich sein, eine zweite Instanz von Maven ausführen von innen Ant, die rein die Fracht Ziel läuft, aber in diesem Fall könnten Sie Probleme mit gesperrten Dateien und dergleichen auftreten. Die Art und Weise, es zu tun wäre, nur einen Tag in Ihrem Ant-Skript zu verwenden und die „mvn“ ausführbare Datei mit den entsprechenden Zielen als Argumente nennen.

Der sauberste Weg ist, einfach das Cargo-Ziel auf eine Phase des Build zu binden, und hat dieses nachlaufen Ant beendet ist. Ich sehe keinen Nachteil zu diesem Ansatz -. Sie haben wirklich keine konkreten Gründe angegeben, warum Sie wollen, es zu vermeiden

Sie können in den beiden folgenden Maven interessiert sein

Das GMaven Plugin können Sie Maven Plugins groovy schreiben. Dies gibt Ihnen vollen Zugriff auf Ameise mit dem Ant Builder , ist es eine sehr einfache Möglichkeit, ant-Skripte in Groovy zu schreiben. Dann in diesem Groovy mojo Sie jede Maven mojo nennen könnte die Mojo Executor verwendet wird.

Ich habe die in mehreren benutzerdefinierten Maven Plugin verwendet und ich habe nicht einen einfacheren Weg, zu schreiben und zu kombinieren Mojos.

gefunden
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top