MultiRootFileSet

Ant 1.9.4 以降

MultiRootFileSet はファイルまたはディレクトリのグループです。これらのファイルまたはディレクトリは、複数の PatternSets および セレクタ から取得するパターンによって一致し、基本ディレクトリを起点とするディレクトリフォレストで見つけることができます。

MultiRootFileSet は、同じパターンとセレクタを共有する FileSets および DirSets の結合として機能します。

MultiRootFileSet は dir 属性を除き、FileSet と DirSet のすべての属性と入れ子要素をサポートします。

属性 説明 必須
basedirs MultiRootFileSet のルートを作成するディレクトリのコンマ区切りリスト。 いいえ
cache 結果をキャッシュするかどうか。無効にすると、パフォーマンスに重大な影響が出る可能性があります。 いいえ、デフォルトは true
type このセットに含まれるファイルシステムエンティティのタイプです。許容される値は次のとおりです。
  • file - 通常ファイル
  • dir - ディレクトリ
  • both - 通常ファイルとディレクトリ
いいえ、デフォルトは file
includes 含める必要のあるディレクトリの comma または space で区切られたパターンのリスト。 いいえ、デフォルトはすべてのディレクトリ
includesfile ファイル名。このファイルの各行は、include パターンとして扱われます。 いいえ
excludes 除外する必要のあるディレクトリの comma または space で区切られたパターンのリスト。 いいえ、デフォルトはなし
excludesfile ファイル名。このファイルの各行は、exclude パターンとして扱われます。 いいえ
casesensitive 大文字と小文字を区別する必要があるかどうかを指定します(trueyeson または falsenooff)。 いいえ、デフォルトは true
followsymlinks シンボリックリンクに従いますか?fileset のドキュメントを参照してください。 いいえ、デフォルトは true
erroronmissingdir 基本ディレクトリのいずれかが存在しない場合に発生する内容を指定します。 true の場合、ビルドエラーが発生します。 false の場合、サブツリーは無視されます/空です。 いいえ、デフォルトは true

入れ子要素として指定されたパラメーター

PatternSets は、入れ子になった <patternset> 要素として指定できます。さらに、MultiRootFileSet は暗黙的な PatternSet を持ち、入れ子になった <include><includesfile><exclude><excludesfile> 要素を直接サポートし、<patternset> の属性もサポートします。

セレクタは、MultiRootFileSet 内に入れ子になった要素として利用できます。MultiRootFileSet 内のセレクタのいずれかがファイルまたはディレクトリを選択しないと、それは MultiRootFileSet の一部とはみなされません。これにより、MultiRootFileSet は <and> セレクタコンテナーと同等になります。

さらに、MultiRootFileSet の basedirs は、単一の file 属性を持つ入れ子になった basedir 要素として指定できます。

<multirootfileset basedirs="${build.dir},${other.project.dir}">
  <include name="apps/**/classes"/>
  <exclude name="apps/**/*Test*"/>
</multirootfileset>

${build.dir} または ${other.project.dir}apps サブディレクトリの下で見つかった、classes 内のすべてのファイルをグループ化しますただし、その名前に Test というテキストが含まれているファイルは除きます。

<multirootfileset>
  <basedir file="${build.dir}"/>
  <basedir file="${other.project.dir}"
  <include name="apps/**/classes"/>
  <exclude name="apps/**/*Test*"/>
</multirootfileset>

最初の例と同じですが、入れ子になった basedir 要素を使用します。入れ子になった要素と basedirs 属性を同時に使用してマージできます。