2012-11-28 84 views
0

所以我有一大堆的罐子在目錄中的看起來像這樣: 複製與螞蟻最近的文件


library_2.4.3.jar 2/3/2012 
library_3.0.1.jar 9/1/2012 
api.lib_10.3.jar 3/2/2011 
api.lib_12.4.5.jar 6/9/2012 

我已經寫了下面的使用Ant 1.7複製罐子的地方,我希望他們和從文件中刪除版本號

<copy todir="${lib.dir}" overwrite="true"> 
    <fileset dir="${plugins.dir}">    
     <include name="library*.jar" /> 
     <include name="api.lib*.jar" /> 
    </fileset> 
    <regexpmapper from="(.*)_(.*).jar" to="\1.jar"/> 
</copy> 

我遇到的問題是我希望它複製文件的較新版本。現在,它似乎只複製較舊的文件。我查看了<sort><TimestampSelector>任務,但這些任務在複製任務下不受支持。

如何複製文件的較新版本?

+0

試試這個http://stackoverflow.com/questions/6154641/ant-copy-newest-file-with-file-name-filter – Vishal

+0

我試過,但我得到一個'副本不支持嵌套「最後「元素」錯誤 – Spacebob

+0

您使用的是什麼版本的螞蟻? – Vishal

回答

0

不要把它們複製任務下直接...創建屬性,並在副本標籤使用屬性...

<timestampselector property="latest.modified"> 
    <path> 
    <fileset dir="${my-directory.dir}"> 
     <include name="file-*" /> 
    </fileset> 
    </path> 
</timestampselector> 

<copy todir="." file="${latest.modified}"> 

希望,它的工作原理。