Estoy usando un POM principal que define un complemento que no quiero que se ejecute en un POM secundario. ¿Cómo puedo desactivar completamente el complemento en el pom niño?
Restricción: No puedo cambiar el POM padre mismo.
Lo siguiente funciona para mí cuando deshabilito Findbugs en un niño POM:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<executions>
<execution>
<id>ID_AS_IN_PARENT</id> <!-- id is necessary sometimes -->
<phase>none</phase>
</execution>
</executions>
</plugin>
Nota: la definición completa del complemento Findbugs está en nuestro padre / super POM, por lo que heredará la versión y demás.
En Maven 3, deberás usar:
<configuration>
<skip>true</skip>
</configuration>
para el complemento
<id>…</id>
parte del POM principal, luego funcionó para mí.<skip>
parámetro.Vea si el complemento tiene un parámetro de configuración 'omitir'. Casi todos lo hacen. si es así, simplemente agréguelo a una declaración en el elemento secundario:
Si no, entonces use:
fuente
El hilo es viejo, pero tal vez alguien todavía está interesado. La forma más corta que encontré es una mejora adicional en el ejemplo de λlex y bmargulies. La etiqueta de ejecución se verá así:
2 puntos que quiero destacar:
Después de publicarlo, ya se encuentra en stackoverflow: en un proyecto de varios módulos de Maven, ¿cómo puedo desactivar un complemento en un niño?
fuente
Sé que este hilo es muy antiguo, pero la solución de @Ivan Bondarenko me ayudó en mi situación.
Tenía lo siguiente en mi
pom.xml
.Lo que quería era deshabilitar la ejecución de
generate-citrus-war
un perfil específico y esta era la solución:fuente