2010-11-25 4 views
4

Ich versuche, einen Wrapper zu einem Maven-Plugin, das ich im Internet gefunden habe, zu erstellen. Mein Wrapper sollte etwas arbeiten, anstatt die Ausführung des ursprünglichen Plugins aufzurufen.Calling Maven Ziel aus einem anderen Ziel

Die Beispiele, die ich bisher gesehen habe, instanziieren das andere Plugin, setzen alle Variablen, als die execute-Methode aufzurufen. Ich möchte das nicht tun (wenn ich es vermeiden kann), weil die meisten Instanzvariablen privat sind.

Gibt es eine Möglichkeit, Plexus eine Instanz des anderen Plugins injizieren zu lassen, während die Instanzvariablen gefüllt werden? Maven Dokumentation ist sehr vage darüber ... konnte es nicht funktionieren.

Danke, Rafael.

+0

Ich denke, Sie müssen genauer angeben, was Sie mit all dem erreichen wollen. Mit Maven gibt es oft viele Möglichkeiten, dasselbe Ziel zu erreichen. – HDave

+0

Ok, ich möchte ein Plugin machen, aber ich möchte, dass dieses Plugin etwas macht und dann die Kontrolle an ein anderes Plugin weiterleitet. Im Frühjahr zum Beispiel würde ich die andere Bohne in meine Bohne injizieren und die Methode aufrufen, die ich möchte. Spring würde die Initialisierung der Variablen übernehmen, die in die Bean injiziert werden, die ich anrufe. – Rafael

Antwort

0

Werfen Sie einen Blick auf MojoExecutor Klasse von qulice-maven-plugin. Die Klasse macht genau das, wonach Sie suchen, z. B .:

new MojoExecutor(mavenPluginManager, mavenSession) 
    .execute("com.qulice:maven-qulice-plugin:1.0", "check", properties); 
Verwandte Themen