私は ant 1.6.2 を使用しており、ソース ディレクトリとターゲット ディレクトリを比較し、ソース ディレクトリに存在するすべてのサブディレクトリを特定し、ターゲット ディレクトリ内の好きな名前のサブディレクトリを削除するタスクを設定しようとしています。
したがって、ソース ディレクトリにサブディレクトリ sub1、sub2、および sub3 があり、ターゲット ディレクトリに sub1、sub2、sub3、および sub4 があるとします。ターゲット ディレクトリから sub1、sub2、および sub3 を削除します。
FileSelector を使用して、ターゲットに存在するソース内のすべてのディレクトリを識別することで、これを行うことができると思いました。ただし、 <type> ファイルセレクターがディレクトリの一致を返すことはできません。
最終的に、私は次のようなことをしたいと考えました:
<fileset id="dirSelector" dir="${install.dir}">
<type type="dir"/>
<present targetdir="${dist.dir}"/>
</fileset>
ソースディレクトリに存在するディレクトリをリストして出力することから始めました。
<fileset id="dirSelector" dir="${install.dir}">
<type type="dir"/>
</fileset>
<property name="selected" refid="dirSelector" />
<echo>Selected: ${selected}</echo>
ただし、タイプセレクターがディレクトリに設定されていると何も印刷されません。タイプをファイルに変更すると、ファイルが印刷されます。
私がやろうとしていることを達成するためのより良い方法はありますか? タイプセレクターの使用に何か欠けていますか?