如何在Ant中从批处理文件中获取%ERRORLEVEL%

如何在Ant中从批处理文件中获取%ERRORLEVEL%,ant,Ant,我想知道是否有可能从Ant build xml中的批处理文件中获取返回值 我的批处理文件返回%ERRORLEVEL%值(在我的情况下,批处理文件返回2)。我想知道是否有可能在Ant中捕获并标记为错误。下面是我使用的代码片段: <exec executable = "cmd"> <arg value="/c"/> <arg value="C:\workspace\Build\cross_Compile.bat"/> </exec>

我想知道是否有可能从Ant build xml中的批处理文件中获取返回值

我的批处理文件返回
%ERRORLEVEL%
值(在我的情况下,批处理文件返回2)。我想知道是否有可能在Ant中捕获并标记为错误。下面是我使用的代码片段:

<exec executable = "cmd">
  <arg value="/c"/>     
   <arg value="C:\workspace\Build\cross_Compile.bat"/>
 </exec>

当前在批处理文件调用之后,生成始终报告为成功。看起来Ant没有处理
%ERRORLEVEL%
,或者我不确定。如何让Ant处理
%ERRORLEVEL%

使用and。默认情况下,将忽略错误代码

<property name="Batcherrcode" value="0"/>
<exec executable = "cmd" failonerror="true" resultproperty="Batcherrcode">
  <arg value="/c"/>     
   <arg value="C:\workspace\Build\cross_Compile.bat"/>
 </exec>
<echo message="Error Code:=${Batcherrorcode}" />


谢谢您的帮助。我尝试过,但批处理文件返回2时,
Batcherrcode
的值仍然为0(我在批处理文件中进行打印以找出错误级别),我认为如果在批处理文件中打印,您得到的最后一个错误代码来自打印,这是成功的。如果在打印命令后打印错误代码,您的错误代码是print命令的错误代码。是否按如下方式退出批处理:
@exit%ERRORLEVEL%
?请发布批处理文件。对不起。这是我的批处理文件内容
echo%ERRORLEVEL%echo“完成”如果%ERRORLEVEL%neq 0退出/b%ERRORLEVEL%
删除此:
echo%ERRORLEVEL%echo“完成”
并再次测试