Distriggers un plugin Maven definito in un POM padre

Sto usando un POM padre che definisce un plugin che non voglio essere eseguito in un POM figlio. Come posso disabilitare completamente il plugin nel child pom?

Vincolo: non posso cambiare lo stesso POM padre.

Quanto segue funziona per me quando disabilita Findbug in un POM figlio:

 org.codehaus.mojo findbugs-maven-plugin   none    

Nota: la definizione completa del plugin Findbugs è nel nostro genitore / super POM, quindi erediterà la versione e così via.

In Maven 3, dovrai utilizzare:

   true  

per il plugin.

Verifica se il plug-in ha un parametro di configurazione ‘salta’. Quasi tutti lo fanno. se lo fa, aggiungilo a una dichiarazione nel bambino:

  group artifact  true   

In caso contrario, utilizzare:

  group artifact   TheNameOfTheRelevantExecution none    

Il thread è vecchio, ma forse qualcuno è ancora interessato. La forma più breve che ho trovato è un ulteriore miglioramento dell’esempio di λlex e bmargulies. Il tag di esecuzione sarà simile a:

  TheNameOfTheRelevantExecution   

2 punti che voglio evidenziare:

  1. fase è impostata su nulla, che sembra meno hacky di ‘nessuno’, anche se è ancora un hack.
  2. id deve essere uguale all’esecuzione che desideri sovrascrivere. Se non specifichi l’id per l’esecuzione, Maven lo farà implicitamente (in un modo non previsto da te in modo intuitivo).

Dopo aver pubblicato, è già presente nello stackoverflow: in un progetto multi-modulo Maven, come posso disabilitare un plug-in in un figlio?

So che questo thread è molto vecchio, ma la soluzione di @Ivan Bondarenko mi ha aiutato nella mia situazione.

Ho avuto il seguente nel mio pom.xml .

  ...   com.consol.citrus citrus-remote-maven-plugin ${citrus.version}   generate-citrus-war  test-war       

Quello che volevo era disabilitare l’esecuzione di generate-citrus-war per un profilo specifico e questa era la soluzione:

  it    com.consol.citrus citrus-remote-maven-plugin ${citrus.version}    generate-citrus-war     ...