6 Stimmen

Kann Maven 2 zwei verschiedene Versionen eines Build-Plugins im selben Projekt verwenden?

Mein Projekt erfordert Funktionen einer neuen Version eines Maven-Build-Plugins für einige seiner Ziele, aber die neue Version schlägt (aufgrund eines Fehlers im Plugin) bei einem der anderen Ziele fehl. Als Workaround, bis der Fehler behoben ist, würde ich gerne das defekte Ziel mit einer älteren Version des Plugins ausführen. Bearbeiten: Genauer gesagt, muss ich das generateAsync-Ziel mit Version 1.1 des gwt-maven-plugin und alle anderen Ziele mit Version 1.2-SNAPSHOT ausführen.

Wenn ich eine separate Plugin-Version deklariere, um das defekte Ziel auszuführen, verwendet Maven immer noch die defekte Version. Gibt es eine andere Möglichkeit, dieses Problem zu lösen?

<plugin>
 <groupId>org.codehaus.mojo</groupId>
 <artifactId>gwt-maven-plugin</artifactId>
 <version>1.1</version>
   <executions>
     <execution>
       <goals>
         <!-- this goal is broken in 1.2-SNAPSHOT -->
         <goal>generateAsync</goal>
       </goals>
     </execution>
   </executions>
   ...
 </plugin>
 <plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>gwt-maven-plugin</artifactId>
   <version>1.2-SNAPSHOT</version>
   <executions>
     <execution>
       <goals>
         <goal>compile</goal>
         <!-- <goal>generateAsync</goal> -->
         <goal>test</goal>
       </goals>
     </execution>
   </executions>
   ...
</plugin>

4voto

Pascal Thivent Punkte 548176

Sie müssen pas dasselbe Plugin zweimal in Ihrem POM deklarieren. Was möglich ist, ist die Verwendung eines <plugin> Block mit zwei <executions> aber das wird Ihr Problem nicht lösen, keine gibt es keine Möglichkeit, das zu erreichen, was Sie wollen.

Aber haben Sie schon das gwt-maven-plugin 1.2 Release Candidate getestet? Er wurde heute hier zur Verfügung gestellt http://people.apache.org/~nicolas/staging/ Die Abstimmung ist für 72 Stunden geöffnet und Tests sind willkommen. Vielleicht ist Ihr Problem in dieser Version gelöst (ich bin mir nicht sicher, da Sie nicht viele Details zu dem Problem angegeben haben und ich kein Problem gefunden habe, das mit gwt:generateAsync im Fehlerverfolgungssystem des Plugins, das kürzlich geschlossen oder geöffnet wurde).

Wenn Sie ein bestimmtes Problem haben, das nicht in der Fehlerverfolgungssystem Es scheint der perfekte Zeitpunkt zu sein, um die Leute darauf aufmerksam zu machen, vor allem, wenn Sie wollen, dass es in Version 1.2 gelöst wird. Der Ball liegt bei Ihnen.

0voto

Hugo Palma Punkte 3296

Ich denke, dass das, wonach Sie suchen, die Phase Element in der Plugin-Konfiguration. Das goal-Element gibt an, welches Ziel des Plugins ausgeführt werden soll, das phase-Element gibt an, in welcher Phase das Ziel des Plugins ausgeführt werden soll.

Sie können mehr darüber sehen ici .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X