Maven: essayer d'obtenir les poms de mon sous-module ne hériteront un plug-in dans le parent
-
22-09-2019 - |
Question
Mon projet a une pom-mère et plusieurs poms sous-module. J'ai mis un plug-in dans le parent qui est responsable de la construction de nos distribuables d'installation (à l'aide install4j). Il n'a pas de sens d'avoir ce plugin fonctionner sur les sous-modules, donc je l'ai mis de faux dans la configuration du plug-in, comme on le voit ci-dessous. Le problème est, quand je lance mvn installation propre install4j: compiler il nettoie, compile et exécute le plugin install4j sur le parent, mais il tente de l'exécuter sur les modules de l'enfant et les accidents.
Voici la config du 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>
Suis-je mal compris le but de hérité = faux? Quelle est la bonne façon d'obtenir que cela fonctionne? J'utilise Maven 2.2.0.
La solution
J'ai trouvé cela peut fonctionner deux façons. La façon dont je le fais maintenant ...
1) A pris en <inherited>false</inherited>
2) Première course mvn installation propre
3) Puis exécuter mvn install4j: compiler -N (pour les non-récursif)
Le plugin peut également utiliser l'annotation @aggregator pour obtenir le même effet.