use*_*609 4 ant build-automation build
是否有任何 Ant 任务仅在目标位置不存在文件时才将文件复制到目标位置?
有以下三种情况:
这个问题要求复制只在情况 1 中发生。默认情况下,复制发生在情况 1 和 2 中;将 overwrite 设置为 true 会使复制在所有三种情况下都发生。答案是使用present选择器:
<copy todir="dest">
<fileset dir="src">
<present present="srconly" targetdir="dest" />
</fileset>
</copy>
Run Code Online (Sandbox Code Playgroud)
Reb*_*bse -1
复制任务有一个覆盖属性,默认设置为 false。
overwrite = 覆盖现有文件,即使目标文件较新。必需=否;默认为 false。
因此,当 overwrite="false" (默认值)时,您可以完成复制任务,这意味着:
<copy todir="../dest/dir">
<fileset dir="src_dir">
<exclude name="**/*.java"/>
</fileset>
</copy>
Run Code Online (Sandbox Code Playgroud)
或对于单个文件:
<copy file="myfile.txt" todir="../some/other/dir"/>
Run Code Online (Sandbox Code Playgroud)
完全符合您的要求。
| 归档时间: |
|
| 查看次数: |
3644 次 |
| 最近记录: |