2012-10-05 16 views
7

Sono abbastanza nuovo per Maven ...Posso modificare la fase di distribuzione di Maven per sostituire il plugin maven-deploy-plug con il mio plugin?

Quello che sto cercando di fare è saltare la Maven-deploy-plug durante la fase di distribuzione, mentre la sua sostituzione con il mio plug-in (cioè sto distribuzione su una posizione non di repository).

mi rendo conto che potrei farlo in diversi altri modi, ma il boss vuole essere in grado di eseguire:

mvn distribuire

Per ottenere i risultati della mia soluzione attuale, che è disabilitazione del plug-in maven-deploy (che sembra disabilitare l'intera fase di distribuzione) e specifica manualmente l'obiettivo di caricamento personalizzato dalla riga di comando.

Attualmente sto riuscendo a riuscire nella mia missione con:

<executions> 
    <execution> 
     <phase>deploy</phase> 
    </execution> 
</executions> 

nella// sezione di plug-plugins accumulo contenente la mia specifica plug-in, in quanto la fase di distribuzione viene saltato da:

 <plugin> 
      <artifactId>maven-deploy-plugin</artifactId> 
      <version>2.7</version> 
      <configuration> 
       <skip>true</skip> 
      </configuration> 
     </plugin> 

Grazie!

risposta

6

Prova questa alternativa (non testato) per disabilitare il plugin Deploy di serie:

<plugin> 
    <artifactId>maven-deploy-plugin</artifactId> 
    <version>2.7</version> 
    <executions> 
     <execution> 
      <id>default-deploy</id> 
      <phase>none</phase> 
     </execution> 
    </executions> 
</plugin> 
+1

Ciò funzionerà fino a quando 'Maven-deploy-Plugin' (in qualche versione futura) decide di legarsi a qualche altra esecuzione ID , diverso da 'default-deploy' – yegor256

+0

Questo funziona ed è utile se si desidera sostituire il comportamento di distribuzione standard con es. un'esecuzione specifica del file di distribuzione. –

+1

@ yegor256 Sono d'accordo. Anche se immagino che sarebbe raccolto abbastanza rapidamente durante una mossa cauta verso una nuova versione di Maven. –

9

disabilitando l'esperto di implementare-plugin (che sembra essere disabilitando l'intera fase di distribuzione)

Questo non è corretto. La disabilitazione di maven-deploy-plugin non disabilita l'intera fase di distribuzione. Questo è come dovrebbe essere fatto (sembra che si sta facendo già):

<build> 
    <pluginManagement> 
    <plugins> 
     <plugin> 
     <artifactId>maven-deploy-plugin</artifactId> 
     <configuration> 
      <skip>true</skip> 
     </configuration> 
     </plugin> 
    </plugins> 
    </pluginManagement> 
</build> 
+0

Sì, hai ragione. L'ho capito - vedi sotto. Grazie per l'input! – jbeck