Question

Je suis nouveau à Maven. Je veux utiliser le filtrage dans un projet multimodule. Le type d'emballage de la pom-mère est réglé sur pom. La structure du projet est le suivant:

pom.xml
     |
     |______MODULE1
     |       |
     |       pom.xml
     |       File1_needed_to_be_filtered
     |
    File2_needed_to_be_filtered

S'il vous plaît noter que Module1 est aussi projet multimodule. Alors s'il vous plaît me dire comment puis-je appliquer un filtrage à Fichier1 et fichier2. Et si je demande le filtrage à fichier1, alors où sera le fichier traité est stocké (Comme fichier pom dont le type d'emballage est pom ne crée pas de dossier cible nommé!) S'il vous plaît aidez-moi car cela est très important pour moi et cette question est abordée nulle part ailleurs sur Internet.

Était-ce utile?

La solution

Vous pouvez utiliser le maven-assembly-plugin - avec un ' format « dir (bien que si jamais il y a plus d'un fichier, il peut être judicieux de faire une archive quelconque). Le format de descripteur vous permet de filtrer. Cela devrait fonctionner avec la hiérarchie des pom et le fichier que vous décrivez ci-dessus.

Cependant, je recommande de mettre ces modules frères et soeurs au lieu du parent. Cela permet de maintenir la logique de votre aggrégateur pom, et (une fois que vous commencez à le faire), vous pouvez décider qu'il est plus facile d'utiliser l'assemblage pour les distribuer avec vos autres composants, que vous voudriez un module de toute façon.

Autres conseils

Pour avoir des ressources de filtre Maven lors de la copie, le filtrage mis à true pour le répertoire des ressources dans votre pom.xml:

<project>
  ...
  <build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filterineg>
      </resource>
    </resources>
  </build>
</project>

Mais si vous voulez filtrer les ressources, ne les mettez pas dans un projet avec un emballage de type pom, cela n'a pas de sens (pour la raison que vous vous avez donné). En fait, je ne comprends pas ce que vous essayez d'atteindre (puisque vous savez que ce n'est pas comment les choses fonctionnent).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top