Dave
Dave

Reputation: 8897

Ant: How can I ignore build error if directory doesn't exist?

I'm using Ant 1.8.1. How can I ignore the following build error if a directory doesn't exist? The error I get is

BUILD FAILED
/Users/davea/myco2-myco/build.xml:211: Directory does not exist: /Users/davea/myco2-myco/${mycousa.test.root}

The line in question is the delete directive from the clause below. Thought the "erroronmissingdir" attribute would have solved the problem, but I guess not …

    <delete>
            <fileset dir="${mycousa.test.root}" erroronmissingdir="false">
                    <include name="suite.html" />
            </fileset>
    </delete>

Let me know how I can modify the above so that I won't get the error even if the directory doesn't exist.

Thanks - Dave

Upvotes: 17

Views: 13174

Answers (2)

Brent Writes Code
Brent Writes Code

Reputation: 19603

I think the problem is that the error condition you're handling is on the creation of the FileSet, not the delete itself. Check out the failonerror directive on the delete task:

<delete failonerror="false">
            <fileset dir="${mycousa.test.root}" erroronmissingdir="false">
                    <include name="suite.html" />
            </fileset>
</delete>

Reference: http://ant.apache.org/manual/Tasks/delete.html

Upvotes: 21

Related Questions