2012-10-01 185 views
0

我正在運行一個foreach循環遍及根目錄下的所有目錄。ant排除目錄中的目錄

我想排除名稱爲「src」和「bin」的所有目錄。

如何從結果中排除這些目錄?

根目錄中有多個子目錄,子目錄也可能包含子目錄。我想瀏覽根目錄下的所有目錄,除了那些名稱在上面的目錄。

我曾嘗試以下,沒有工作過:

 <path> 
      <dirset dir="../Apps/"> 
       <exclude name="*src*,*bin*"/> 
      </dirset> 
     </path> 

 <path> 
      <dirset dir="../Apps/"> 
       <exclude name="**/src*,**/bin*"/> 
      </dirset> 
     </path> 

 <path> 
      <dirset dir="../Apps/"> 
       <exclude name="**/src/**,**/bin/**"/> 
      </dirset> 
     </path> 

回答

2

這似乎預期(螞蟻1.8.2和螞蟻contrib請1.0b3工作):

<target name="test"> 
    <foreach target="echo-folder-name" param="folder"> 
     <path> 
      <dirset dir="../Apps/"> 
       <exclude name="**/bin/**" /> 
       <exclude name="**/src/**" /> 
      </dirset> 
     </path> 
    </foreach> 
</target> 

<target name="echo-folder-name"> 
    <echo>${folder}</echo> 
</target> 
+0

我之前嘗試過這個選項,但使用CSV。爲什麼CSV不起作用?它在文檔中說使用CSV或空格來分隔這些值應該可以工作。謝謝,這工作分離成不同的標籤。 – prolink007