1. ホーム
  2. file-io

[解決済み] Antです。ディレクトリ内の各ファイルに対してコマンドを実行するには?

2023-01-10 05:42:53

質問

Antのビルドファイルから、ディレクトリ内の各ファイルに対してコマンドを実行したいのですが、どうすればよいですか?

私はプラットフォームに依存しないソリューションを探しています。

どうすればいいのでしょうか?

もちろん、あるスクリプト言語でスクリプトを書くこともできます。 しかし、これはプロジェクトにさらなる依存性を追加することになります。

どのように解決するのですか?

簡単な答え

使用方法 <foreach> をネストした <FileSet>

を必要とします。 アンチコントラクト .

最近のant-contribの例を更新しました。

<target name="foo">
  <foreach target="bar" param="theFile">
    <fileset dir="${server.src}" casesensitive="yes">
      <include name="**/*.java"/>
      <exclude name="**/*Test*"/>
    </fileset>
  </foreach>
</target>

<target name="bar">
  <echo message="${theFile}"/>
</target>

これは、${theFile}が現在のファイルになることで、ターゲットの"bar"をantcallします。