1. 程式人生 > >關於Maven resource配製中include與exclude的關係

關於Maven resource配製中include與exclude的關係

               

<include>與<exclude>是用來圈定和排除某一檔案目錄下的檔案是否是工程資源的。如果<include>與<exclude>劃定的範圍存在衝突時,以<exclude>劃定的範圍為準。大多數情況下,人們使用<include>和<exclude>是為了配合<filtering>實現過濾特定檔案的需要。例如,在一個工程中,src/main/resources目錄下都是工程的資原始檔,並不需要<include>和<exclude>再進行劃定。但如果我們需要對且僅對其中的jdbc.properties和mail.properties兩個檔案進行過濾的話,則需要藉助<include>和<exclude>進行如下的配置:

 <resources>  <!-- Filter jdbc.properties & mail.properties. NOTE: We don't filter applicationContext-infrastructure.xml,    let it go with spring's resource process mechanism. -->  <resource>   <directory>src/main/resources</directory>   <filtering>true</filtering
>
   <includes>    <include>jdbc.properties</include>    <include>mail.properties</include>   </includes>  </resource>  <!-- Include other files as resources files. -->  <resource>   <directory>src/main/resources</directory>   <filtering
>
false</filtering>   <excludes>    <exclude>jdbc.properties</exclude>    <exclude>mail.properties</exclude>   </excludes>  </resource> </resources>
其中第一段<resource>配置宣告:在src/main/resources目錄下,僅jdbc.properties和mail.properties兩個檔案是資原始檔,然後,這兩個檔案需要被過濾。而第二段<resource>配置宣告:同樣在src/main/resources目錄下,除jdbc.properties和mail.properties兩個檔案外的其他檔案也是資原始檔,但是它們不會被過濾。