如何在ant脚本中获取ant任务的返回码?

时间:2011-04-18 07:01:37

标签: scripting ant websphere websphere-mq-fte

我正在使用mqfte。是否有可能捕获我在ant脚本中使用的所有ant任务的返回码?

1 个答案:

答案 0 :(得分:1)

在FTE Ant作业中,每个步骤都有SuccessRC规范。为了继续该步骤,返回代码必须成功。如果作业失败,则将在日志条目中报告失败的返回码。

例如,在以下作业中,预源调用在传输之前加密文件,如果传输成功,则源后调用将删除文件的纯文本版本。根据定义,如果传输失败,将在FTE日志中报告非零返回码。否则调用成功,我们知道返回码全为零。

<request version="4.00" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FileTransfer.xsd">
 <managedTransfer>
  <originator>
      <hostName>${hostName}</hostName>
      <userID>${userID}</userID>
    </originator>
    <sourceAgent QMgr="${sourceQM}" agent="${sourceAgent}"/>
    <destinationAgent QMgr="${destQM}" agent="${destAgent}"/>
    <transferSet priority="5">
      <metaDataSet>
        <metaData key="Cost_Center">1234</metaData>
      </metaDataSet>
      <preSourceCall> 
        <command  type="executable" name="/usr/bin/gpg" successRC="0"> 
          <argument>-es</argument> 
          <argument>--batch</argument> 
          <argument>-r</argument> 
          <argument>${signame}</argument> 
          <argument>--output</argument> 
          <argument>${FILEPATH}.gpg</argument> 
          <argument>--passphrase-file</argument> 
          <argument>${pwdfile}</argument> 
          <argument>${FILEPATH}</argument> 
        </command> 
      </preSourceCall> 
      <postSourceCall> 
        <command  type="executable" name="/var/IBM/WMQFTE/user/ant/rm" successRC="0"> 
          <argument>${FILEPATH}</argument> 
        </command> 
      </postSourceCall> 
      <item checksumMethod="MD5" mode="binary">
        <source disposition="delete" recursive="false">
          <file>${FILEPATH}.gpg</file>
        </source>
        <destination exist="overwrite" type="directory">
          <file>${targetDir}</file>
        </destination>
      </item>
    </transferSet>
    <job>
      <name>gpge.xml</name>
    </job>
  </managedTransfer>
</request>