为了便于访问,我在一系列项目文件夹的父文件中有几个配置文件。在构建项目时,他们需要复制到其中一个项目源文件夹中,直到构建完成后,我希望它们被删除。目前,我有这个:
<target name="build-java">
<copy file="config.properties" todir="project/src" />
<!-- Build other projects -->
<delete file="project/src/config.properties" />
</target>
如果项目构建,那将起作用。唉,我的骄傲,他们并不总是。理想情况下,我喜欢以下Java的等价物:
File src = new File("config.properties");
File dst = FileUtils.copyFile(src, "project/src");
dst.deleteOnExit();
// Carry on with the rest of the build, content in the knowledge that whatever happens, the file will die.
答案 0 :(得分:4)
如何定义删除剩余文件的“干净”任务,并且可以在每次构建后调用它(即使在构建失败后)?
我认为Ant对这些有条件的流量控制事物并不是很好。可能有办法使这项工作,但这可能会变得混乱,
答案 1 :(得分:2)
即使构建失败,您也可以尝试ant-contrib's trycatch来运行删除任务。
ant-contrib还有其他好处,比如foreach任务。如果你能够安装它。