Maven: tentando fazer com que os POMs do meu submódulo não herdem um plugin no pai
-
22-09-2019 - |
Pergunta
Meu projeto tem um pai POM e vários POMs do submódulo. Coloquei um plug -in no pai responsável pela criação de nossos distribuíveis do instalador (usando o Install4J). Não faz sentido fazer com que esse plug -in seja executado nos submódulos, então eu coloquei falso na configuração do plug -in, como visto abaixo. O problema é que, quando executo o MVN Clean Install4J: compilar, ele limpa, compila e executa o plug -in install4j no pai, mas ele tenta executá -lo nos módulos e falhas infantis.
Aqui está a configuração do plugin
<plugin>
<groupId>com.google.code.maven-install4j</groupId>
<artifactId>maven-install4j-plugin</artifactId>
<version>0.1.1</version>
<inherited>false</inherited>
<configuration>
<executable>${devenv.install4jc}</executable>
<configFile>${basedir}/newinstaller/ehd-demo.install4j</configFile>
<releaseId>${project.version}</releaseId>
<attach>false</attach>
<skipOnMissingExecutable>true</skipOnMissingExecutable>
</configuration>
</plugin>
Estou entendendo mal o propósito de herdado = falso? Qual é a maneira correta de fazer isso funcionar? Estou usando o MAVEN 2.2.0.
Solução
Eu descobri que isso pode funcionar de algumas maneiras. Do jeito que estou fazendo agora ...
1) tirou <inherited>false</inherited>
2) Instalação limpa da primeira execução do MVN
3) Em seguida, execute o MVN Install4J: Compile -n (para não recorrente)
O plug -in também pode usar a anotação @AGGreator para obter o mesmo efeito.