web-dev-qa-db-ja.com

ApacheAntを使用してサブディレクトリのないディレクトリ内のすべてのファイルを削除します

ディレクトリ内のすべてのファイルを削除するが、サブディレクトリにはアクセスしないApacheAntターゲットが必要です。

私の現在のアプローチでは、スキップしたいサブディレクトリに明示的に名前を付ける必要があります(atmは単に「src /」)。

<delete>
   <fileset dir="${dist.dir}" excludes="src/" />
</delete>

しかし、私はそれが好きではありません。そうすれば、サブディレクトリ構造で何かが変更されるたびにターゲットを変更する必要があります。

何か案は?

19
tyrondis

これは機能するはずです:

<delete>
   <fileset dir="${dist.dir}">
      <include name="*"/>
   </fileset>
</delete>

*ワイルドカードは、ディレクトリやサブディレクトリではなく、トップレベルのファイルのみを削除する必要があります。再帰的にしたい場合は、代わりに**/*を使用する必要があります。

45
skaffman