2011-02-15 79 views
3

這應該很簡單,但我無法找到解決方法。我需要使用Ant將目錄的子目錄中的任何zip文件解壓到相同的子目錄中。這些文件作爲具有通配符的文件集傳遞給ant任務,例如* / .zip。使用Ant解壓縮目錄中的文件

例如,ant腳本可能必須處理包含file.xml的文件a/b/c/file.zip,因此我想使用解壓縮任務將文件解壓縮到/ b/c/file.xml,但事先並不知道目錄結構是什麼,即它可能是a/b/c/file.zip或t/u/v/w/x/y/z/file.zip。

解壓任務需要「dest」目錄,但我不知道完整的dest目錄將會在腳本運行之前完成。我也考慮過映射器,但據我所知,這僅僅是提取的文件,我不能將zip文件位置作爲映射的一部分。

任何幫助將不勝感激。

感謝, 燕姿

回答

2

您應該能夠從螞蟻的contrib包「的」任務(在文件集)和標準「目錄名稱」任務的循環體來做到這一點。你也想使用ant-contrib「var」任務來取消由「dirname」設置的屬性,否則下一個循環迭代將不會獲得新的值。

http://ant-contrib.sourceforge.net/