java - 执行 CVS checkout 后 Ant 脚本无法找到目标

标签 java ant cvs

我有一个 Ant 脚本,它从 CVS 中 check out 一个项目,然后构建并部署它。要求是脚本应该是“scripts”文件夹中代码的一部分,并且每次 checkout 时都会覆盖该文件。当构建完成而无需进行 CVS checkout 时,一切正常。 我的代码片段是

<target name="deploy.main"  depends="checkProperty" if="propertyExist">
    <echo message="${release.number}"/>
    <sequential>
    <parallel>
    <antcall target="tag.branch"/>
    <antcall target="checkout.main"/>
    </parallel>
    <antcall target="stopJboss" />
    <sleep seconds="10" />
    <antcall target="replaceTag"/>
    <antcall target="deploy" />
    <antcall target="moveConfigFiles" />
    <antcall target="promote"/>
    <antcall target="stopRemoteJboss"/>
    <parallel>
        <antcall target="startJboss" />
        <antcall target="startRemoteJboss"/>
    </parallel>
    </sequential>
</target>

在 check out 过程中,该文件总是被新文件覆盖,ant 是否会在开始时立即读取整个文件并将其保留在内存中?或者它是否尝试在新文件中查找内容?

最佳答案

任何(以及许多工具,如 make)都使用依赖信息的有向无环图。他们一次性构建依赖信息读取文件。 (这样做是为了即使同一目标有多个依赖项,它也只执行一次)。一旦构建了图表,对“该”项目文件的修改将不会产生任何影响。

关于java - 执行 CVS checkout 后 Ant 脚本无法找到目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13492832/

相关文章:

java - 在单遍中执行多次还原

java - 斜边程序,无法弄清楚如何让程序运行,直到用户输入2

java - adfm.jar 文件的用途是什么?如何将其从构建中排除?

java - 使用 Ant 部署 Web 应用程序导致 NoClassDefFoundError

javascript - Cordova:如何更改 HTML 源目录?

svn - 为什么要使用版本控制?

java - 一个又一个对话框显示对话框 : HANGS

java - Vaadin:创建 TabSheets 的 ArrayList

cvs - 如何从 CVS 历史记录中永久删除文件

performance - CVS 性能