Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么ant复制旧文件内容?_Ant_Copy_Fileset - Fatal编程技术网

为什么ant复制旧文件内容?

为什么ant复制旧文件内容?,ant,copy,fileset,Ant,Copy,Fileset,我对ant有一个非常奇怪的问题。此代码段生成一组具有正确名称和时间戳但内容过时的文件 <target name="inflate-workspace"> <copy todir="${rns.workspace.dir}" preservelastmodified="true" > <fileset dir="${git.dir}/azia" /> <fileset dir="${git.dir}/scrap-me

我对ant有一个非常奇怪的问题。此代码段生成一组具有正确名称和时间戳但内容过时的文件

<target name="inflate-workspace">
    <copy todir="${rns.workspace.dir}" preservelastmodified="true" >
        <fileset dir="${git.dir}/azia" />
        <fileset dir="${git.dir}/scrap-menagerie" />
    </copy>
</target>

toDir
中生成的时间戳与
文件集中的时间戳正确匹配,但每个文件的内容大约有2天。我激活了
verbose
标志,并手动验证源目录和目标目录是否正确。我还手动删除了
toDir
,并隔离运行目标,以确保没有其他奇怪的事情发生。使用完全相同的目录运行
cp-R…


该环境是托管在Windows7中的VBox上的Debian。谷歌没有发现任何与“ant复制过时文件内容”或类似内容相关的东西。。。有人听说过这样的事吗?请让我知道,让ant
copy
坏了真是太麻烦了

尝试将
overwrite=“true”
添加到复制命令。

这里的问题是ant 1.8.0只是被破坏了。我无法想象为什么它曾经被发布,或者为什么它仍然在Debian的synaptic中。多么可怕的虫子。。。hacky apache。

检查可能被遗忘的.class文件,并在下次使用ant构建之前将其删除。

您的问题是:复制了您认为不应该复制的文件?或者某些文件未被复制,但本应被复制?正在复制正确的文件集,但每个文件中的文本已过时2天。即使删除整个目标目录,也会发生这种情况。所有的文件都显示出来了,但我可以打开每个文件,看到里面过时的数据。用“cp-R”复制进程会复制具有正确内容的正确文件。我不明白:如果删除目标并调用ant,旧数据从何而来?它一定在源头。这就是为什么我说它“非常奇怪”。。。我找不到任何旧数据可能来自的地方。也许VBox共享文件夹中存在某种缺陷,但这并不能解释“cp-R”的工作原理。我真的找不到任何可以理解的东西。是不是两个目录都包含具有相同子路径的文件?嗯,即使我删除了整个目标目录,也会发生这种情况。也许VBox共享文件夹中存在一些奇怪的错误,尽管它总是使用“cp-R”正常工作。您是否建议ant 1.8.0能够将文件内容缓存2天?你的问题在别的地方。如果删除了
toDir
文件夹,则该文件夹不是完全隔离的。更彻底的隔离是使用一个从未存在过的不同的目标文件夹,我不认为ant在“缓存”任何东西。有很多种可能性,例如,ant可以使用临时区域来暂存目录副本。对于相关代码中的bug来说,在目录副本上生成过时的文件数据是非常简单的。我可以调查代码的变化,看看问题出在哪里,但我很高兴它能在最新版本中工作。