如何防止从.bat文件调用时消失的ANT控制台?

时间:2015-02-12 07:55:13

标签: batch-file ant build

您好我已经创建了简单的build.bat文件,如下所示:

    @echo off
    ant -buildfile build-rj-projects.xml
    pause

我的build-rj-projects.xml构建文件如下:

<?xml version="1.0"?>
   <project name="RJ Build Projects" default="info">

   <target name="info">
      <echo>Hello World - Welcome to Apache Ant!</echo>
   </target>

</project>

现在,当我双击build.bat文件时,它会执行build-rj-projects.xml文件的目标,但突然控制台消失了! :(。我试过放另一个目标

<sleep seconds="10"/>

在build-rj-projects.xml文件中,但是对于build-rj-projects.xml文件中的每个目标,它都会休眠10秒。任何解决方案?

1 个答案:

答案 0 :(得分:1)

ant通常是批处理文件。从另一个批处理文件调用批处理文件时,执行流将转移到被调用的文件,并且不会返回给调用者。在您的情况下,这意味着未执行pause命令,因为批处理文件在调用ant时结束。您需要将呼叫线路更改为

call ant -buildfile build-rj-projects.xml

使用call命令,当被调用的批处理文件结束时,执行流程返回给调用者。