Ant 需要蚂蚁条件示例吗

Ant 需要蚂蚁条件示例吗,ant,ant-contrib,Ant,Ant Contrib,有人能用代码“if”、“and”、“not”和“istrue”解释Ant条件属性的例子吗 我是Ant的新手,在这方面需要帮助 基本上我需要下载文件使用FTP。我有代码可以下载。但在下载之前,我需要检查的条件很少 下载前,请检查Downloadstatusvariable值(通常为true或false值) 检查文件是否已下载或在路径中可用 如果两个条件都失败,则执行FTP下载代码 提前感谢。您正在尝试使用。如果您单击那边的链接,文档将举例说明您可能希望通过每个任务实现的目标 这里可能有一些相关的例

有人能用代码“if”、“and”、“not”和“istrue”解释Ant条件属性的例子吗

我是Ant的新手,在这方面需要帮助

基本上我需要下载文件使用FTP。我有代码可以下载。但在下载之前,我需要检查的条件很少

  • 下载前,请检查Downloadstatusvariable值(通常为true或false值)
  • 检查文件是否已下载或在路径中可用
  • 如果两个条件都失败,则执行FTP下载代码
  • 提前感谢。

    您正在尝试使用。如果您单击那边的链接,文档将举例说明您可能希望通过每个任务实现的目标


    这里可能有一些相关的例子:

    标准Ant没有“if”任务,但是您可以通过使用“condition”任务执行几乎任何需要的条件逻辑。有关一些示例,请参见


    库中有一组额外的任务,包括“if”任务,但我建议不要使用它,除非您真的需要,因为它会增加构建环境的复杂性。

    ant contrib是广泛使用的库,if/else/for/foreach任务不仅会使编写复杂的ant脚本变得更容易,它们将使您的ant脚本更具可读性

    但是,既然你坚持:)

    我过去处理这个问题的方法是设置一个任务a,该任务a仅在设置了属性X时执行,并使任务a依赖于某个任务B,该任务B检查条件并设置属性X(如果条件为真)。例如:

    <target name="get-ftp-file" depends="check-need-ftp-file" if="ftp.call.required">
      <ftp ... />
    </target>
    
    <target name="check-need-ftp-file">
      <condition property="ftp.call.required">
        <and>
          <not>
            <!-- Checks if Downloadstatusvariable variable is true -->
            <istrue value="${Downloadstatusvariable}"/>
          </not>
          <not>
            <!-- Checks if file is present in filesystem -->
            <available file="${my.file}"/>
          </not>
        </and>
      </condition>
    </target>
    
    
    


    希望能有所帮助。

    谢谢Sujay。我不想使用Ant Contrib任务。我只需要使用标准蚂蚁。也许你能告诉我们你到底想要实现什么?这样,我们就可以更容易地为您提供一些指导。我不认为stackoverflow在不久的将来会成为一个教程网站也许您想修改您的问题并添加更多信息。谢谢Sujay。。将编辑问题并重新发布。:-)谢谢你,加雷斯。我不想使用Ant contrib库。我需要使用标准的蚂蚁。我读了那个文档,但觉得我需要更多的带有“and”和“not”以及“iftrue”的条件属性示例。嘿,Choover,谢谢你的帮助。你能给我解释一下这里的“和”和“不”操作符的功能吗。我总是对这些事情感到困惑…:-(回答得好。我不同意ant contrib是个好主意,正是因为它使您能够创建复杂的构建脚本……但这当然是一个品味问题。我个人嵌入了一种脚本语言(如groovy)当ANT中的标准任务无法完成任务时。Mark O'Connor,我以前从未在ANT脚本中见过嵌入式groovy。感谢您的提示!这是一个很好的示例,因为它也适用于我的用例(只需稍作更改),但我认为您需要将“任务”XML元素更改为“目标”?