Re: "Sync" sometimes does not delete folders

"Al Le" <[email protected]>
Newsgroups gmane.comp.jakarta.ant.user
Message-ID <trinity-7d82aa6b-62a8-481b-9199-e18bb351566f-1476701469273@3capp-gmx-bs05>
Hello,

I could track down the reason for the problem. Now I'd need an advice from experts how to solve it :-)

When synchronizing the dirs, we'd like to preserve some files. These files have a certain local name. Hence we specify these files in the 'preserveintarget' clause.

The problem is that if a directory that should be deleted as a whole (because it does not exist in the source anymore) contains such a file, it does not get deleted (because it's still not empty).

How could I achieve that the non-existence of the dir in the source "wins" over the 'preserveintarget'?

Here's an example:

source dir structure: empty (i.e. no files or subdirs in it)

target dir structure:

aaa (dir)
   fileToPreserve.txt (file)

   
<project default="sync">

    <property name="from" value="C:\testFrom" />
    <property name="to" value="C:\testTo" />

    <target name="sync">
        <sync todir="${to}">
            <fileset dir="${from}"/>
            <preserveintarget>
                <include name="**/fileToPreserve.txt" />
            </preserveintarget>
        </sync>
    </target>

</project>


The desired result here would be that the dir 'aaa' is deleted in the target because the dir does not exist in the source.

What I observe is that the dir 'aaa' is not deleted because it contains a file to preserve. But this file should be ignored in my case because 'aaa' should be deleted as a whole. I.e. ant should not even look into aaa.

How can I achieve this?

Thanks!
AL
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.