2016-02-23 50 views
3

我正嘗試使用「maven-clean-plugin」刪除位於/ my/path文件夾中的其他文件。followSymlinks不適用於maven-clean-plugin

<plugin> 
    <artifactId>maven-clean-plugin</artifactId> 
    <executions> 
     <execution> 
      <id>clean-on-cleaning</id> 
      <phase>clean</phase> 
      <goals> 
       <goal>clean</goal> 
      </goals> 
      <configuration>      
       <filesets> 
        <fileset> 
         <directory>target/dart</directory> 
        </fileset> 
        <fileset> 
         <directory>src/main/dart/.pub</directory> 
        </fileset> 
        <fileset> 
         <directory>src/main/dart/build</directory> 
        </fileset> 
        <fileset> 
         <directory>${env.APPDATA}/Pub/Cache</directory> 
        </fileset> 
        <fileset> 
         <directory>src/main/dart/packages</directory>  
         <followSymlinks>false</followSymlinks> 
        </fileset> 
       </filesets> 
      </configuration> 
     </execution> 
    </executions> 

「的src/main /鏢/包」 包含鏈接。其中一個鏈接指向「src/main/dart/lib」文件夾。我已經設置了:

<followSymlinks>false</followSymlinks> 

所以它不應該刪除lib目錄中的文件。但不幸的是它。問題可能在哪裏?

環境配置:

  • 的Maven:Apache的行家-3.3.3
  • Java版本:1.7.0_55(也試過1.8.0_51)
  • 操作系統名稱:Windows 7
  • 版本:6.1
  • 弓:AMD64
+0

我有同樣的問題(嘗試版本2.6.1和3.0.0)。使用maven 3.3.9,java 1.8.0_112 ,Windows 10. – Vojta

回答

1

您的配置來看,你是使用來自clean生命週期的默認綁定的maven-clean-plugin的版本。 This is version 2.5 for Maven 3.3.3

對於這個版本,還有就是maven-clean-plugin不尊重在Windows上followSymLinks屬性的錯誤:它是MCLEAN-58

的Maven清理插件忽略在Windows

的FollowSymLinks參數

這有根據這個錯誤報告,在版本2.6.1中被修復,對於Java> = 7的用戶來說,這是你的情況。

因此,您只需要更新您使用的maven-clean-plugin的版本到2.6.1。目前的版本是3.0.0所以你不妨更新到那一個:

<plugin> 
    <artifactId>maven-clean-plugin</artifactId> 
    <version>3.0.0</version> 
    <!-- rest of configuration --> 
</plugin> 
+0

我有更新的版本,因爲你建議。但它沒有幫助。 – Dezmond

+0

@Dezmond然後我不能再現你的問題。我剛剛在一個示例項目上進行了測試。你可以使用你運行的命令將你的整個日誌作爲一個pastebin嗎? – Tunaki

相關問題