Pergunta

Eu sou novo para Maven. Eu quero usar a filtragem em um projeto multimodule. O tipo de embalagem do pom-mãe é definido como pom. A estrutura do projeto é a seguinte:

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

Por favor note que Module1 é também projecto multimodule. Então, por favor me dizer como posso aplicar a filtragem para file1 e file2. E se eu aplicar a filtragem para file1, então onde vai o arquivo processado ser armazenados (Desde arquivo pom cuja embalagem tipo é pom não criar qualquer pasta de destino nomeado!) Por favor me ajude, pois isso é muito importante para mim e esta questão é abordada em nenhum outro lugar na internet.

Foi útil?

Solução

Você pode usar o maven-assembly-plugin - com um ' formato dir'(embora se há sempre mais de um arquivo, pode fazer sentido para torná-lo um arquivo de algum tipo). A descritor formato permite que você filtro. Isso deve funcionar com a hierarquia pom eo arquivo que você descreve acima.

No entanto, eu recomendo colocar estes em irmãos módulos em vez do pai. Isso mantém a lógica fora de seu pom agregador, e (uma vez que você começar a fazer isso) você pode decidir que é mais fácil de usar a montagem de distribuí-los junto com seus outros componentes, que você iria querer um módulo para qualquer maneira.

Outras dicas

Para ter recursos de filtro Maven ao copiar, definir a filtragem para true para o diretório do recurso em seu pom.xml:

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

Mas se você quiser recursos de filtro, não colocá-los em um projeto com uma embalagem do tipo pom, isso não faz sentido (para a razão que você se deu). Na verdade, eu não entendo o que você está tentando conseguir (uma vez que você sabe que este não é como as coisas funcionam).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top