Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.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
Java 将退出代码从ant返回到批处理文件_Java_Ant_Batch File_Exit Code - Fatal编程技术网

Java 将退出代码从ant返回到批处理文件

Java 将退出代码从ant返回到批处理文件,java,ant,batch-file,exit-code,Java,Ant,Batch File,Exit Code,我的.bat文件中有几个ant任务要执行。 我的.bat文件如下所示: 调用ant-buildfile task.xml target1 调用ant-buildfile task.xml target2 对于每个ant任务,它将执行一个java程序,该程序将使用System.exit()返回一个退出代码 我知道在ant配置中使用resultproperty可以接收退出代码。 如何从调用ant任务中获取.bat文件中的退出代码?您可以尝试以下方法: 1) 在ant task.xml中:如果resu

我的.bat文件中有几个ant任务要执行。
我的.bat文件如下所示:

调用ant-buildfile task.xml target1
调用ant-buildfile task.xml target2

对于每个ant任务,它将执行一个java程序,该程序将使用System.exit()返回一个退出代码

我知道在ant配置中使用resultproperty可以接收退出代码。

如何从调用ant任务中获取.bat文件中的退出代码?

您可以尝试以下方法:

1) 在ant task.xml中:如果resultproperty不是0,则将其设置为失败。要做到这一点,您可以使用

  • resultProperty不是0的条件
  • 状态代码等于java程序返回的状态代码
以下是示例代码:

<exec executable="cmd" resultproperty="javaReturnCode" ...>
    ...
</exec>

<fail message="java program execution failure" status="${javaReturnCode}">
   <condition>
      <not>
        <equals arg1="${javaReturnCode}" arg2="0"/>
      </not>
   </condition>
</fail>

这正是我需要的,非常感谢!我试着用这种方法来测试。
call ant -buildfile task.xml target1
IF NOT ERRORLEVEL 0 GOTO javaProgramErrorHandlingTarget1
call ant -buildfile task.xml target2
IF NOT ERRORLEVEL 0 GOTO javaProgramErrorHandlingTarget2
REM both ant targets exit normally so continue normal job
...
:javaProgramErrorHandlingTarget1
...
:javaProgramErrorHandlingTarget2
...