2015-03-04 10 views
6

Ho questo pacchetto.Come escludere file separati con file non filtratoEstensione

admin.common.upper_case=Uma ou mais letras maiúsculas 

Durante il progetto di costruzione questo pacchetto viene danneggiato.

admin.common.upper_case=Uma ou mais letras mai�sculas 

Al fine di risolvere problema usiamo questa configurazione per Maven-risorse-plugin Vale a dire che abbiamo aggiunto nonFilteredFileExtension tag per proprietà estensione.

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <nonFilteredFileExtensions> 
      <nonFilteredFileExtension>properties</nonFilteredFileExtension> 
     </nonFilteredFileExtensions> 
    </configuration> 
</plugin> 

Questa configurazione ha causato problema con un altro file proprietà come build.properties:

build.version=${project.version} 
static.url.version=${project.build.timestamp} 

abbiamo cercato di utilizzare questa configurazione (tag filtro cioè aggiunto al fine di filtrare il file build.properties):

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <filters> 
      <filter>properties/build.properties</filter> 
     </filters> 
     <nonFilteredFileExtensions> 
      <nonFilteredFileExtension>properties</nonFilteredFileExtension> 
     </nonFilteredFileExtensions> 
    </configuration> 
</plugin> 

Inoltre abbiamo provato con questa configurazione, al fine di evitare il filtro per fasci correnti:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <webResources> 
      <resource> 
       <directory>src/main/resources</directory> 
       <!-- enable filtering --> 
       <filtering>true</filtering> 
       <excludes> 
        <exclude>${basedir}/src/main/resources/one.properties</exclude> 
        <exclude>${basedir}/src/main/resources/two.properties</exclude> 
       </excludes> 
      </resource> 
     </webResources> 
    </configuration> 
</plugin> 

La domanda è come permette di filtrare solo per questo file di proprietà build.properties

risposta

0

Prima di tutto, si dovrebbe cercare di risolvere alla radice del problema per Specifying a character encoding scheme:

<project ...> 
... 
<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    ... 
</properties> 
.. 
</project> 

Un modo per fare ciò che si desidera è specificare i file da includere e i file da escludere. Dal documentation:

<project> 
    ... 
    <name>My Resources Plugin Practice Project</name> 
    ... 
    <build> 
    ... 
    <resources> 
     <resource> 
     <directory>src/my-resources</directory> 
     <includes> 
      <include>**/*.txt</include> 
     </includes> 
     <excludes> 
      <exclude>**/*test*.*</exclude> 
     </excludes> 
     </resource> 
     ... 
    </resources> 
    ... 
    </build> 
    ... 
</project> 

Gli elementi include e exclude dovrebbero funziona anche con i file specifici come path/to/abc.properties.

Problemi correlati