【问题标题】:Determining if a directory already exists using SVN ANT使用 SVN ANT 确定目录是否已存在
【发布时间】:2015-09-10 01:34:27
【问题描述】:

我希望使用 SVN ANT 创建一个目录,但前提是该目录不存在(如果您指定一个已经存在的目录,则使用带有 SVN ANT 的 mkdir 嵌套任务似乎会失败)。

我可以在这里使用 isExists 标志或类似的东西吗?或者在我继续通过 ANT 脚本创建目录之前,我可以使用其他东西来检测 SVN 存储库中的现有目录?

对此的任何想法将不胜感激。

干杯,

斯图尔特

【问题讨论】:

    标签: svn ant


    【解决方案1】:

    您想使用svnExists condition。这允许您执行类似(使用 ant-contrib)

    <if>
        <not><svnExists target="..."/></not>
        <then>
            <svn>
                <mkdir url="..." message="Creating a directory" />
            </svn>
        </then>
    </if>
    

    注意:使用mkdir时,所有中间目录必须已经存在。

    【讨论】:

    【解决方案2】:

    available 任务使您能够根据文件或目录的存在设置属性

    <available property="desired-dir-exists" file="src/desired_dir"/>
    
    <target name="mkdir" unless="desired-dir-exists">
        <svn>
            <mkdir path="src/desired_dir"/>
        </svn>
    </target>
    

    【讨论】:

    • 他指的是 SvnAnt 任务,而不是“普通蚂蚁”
    【解决方案3】:

    两种选择:

    1. 您可以将failonerror 属性设置为false。这样,如果目录存在,则会打印一条错误消息,但不会中止构建。

      <svn failonerror="false">
          <mkdir path="..." message="..."/>
      </svn>
      
    2. 1234563

    【讨论】:

    • 好的,谢谢大家的反馈,我会试试你的建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-25
    • 1970-01-01
    • 2013-02-26
    • 2011-01-07
    相关资源
    最近更新 更多