Ant 1.9.4 以降
MultiRootFileSet はファイルまたはディレクトリのグループです。これらのファイルまたはディレクトリは、複数の PatternSets および セレクタ から取得するパターンによって一致し、基本ディレクトリを起点とするディレクトリフォレストで見つけることができます。
MultiRootFileSet は、同じパターンとセレクタを共有する FileSets および DirSets の結合として機能します。
MultiRootFileSet は dir 属性を除き、FileSet と DirSet のすべての属性と入れ子要素をサポートします。
| 属性 | 説明 | 必須 |
|---|---|---|
| basedirs | MultiRootFileSet のルートを作成するディレクトリのコンマ区切りリスト。 | いいえ |
| cache | 結果をキャッシュするかどうか。無効にすると、パフォーマンスに重大な影響が出る可能性があります。 | いいえ、デフォルトは true |
| type | このセットに含まれるファイルシステムエンティティのタイプです。許容される値は次のとおりです。
|
いいえ、デフォルトは file |
| includes | 含める必要のあるディレクトリの comma または space で区切られたパターンのリスト。 | いいえ、デフォルトはすべてのディレクトリ |
| includesfile | ファイル名。このファイルの各行は、include パターンとして扱われます。 | いいえ |
| excludes | 除外する必要のあるディレクトリの comma または space で区切られたパターンのリスト。 | いいえ、デフォルトはなし |
| excludesfile | ファイル名。このファイルの各行は、exclude パターンとして扱われます。 | いいえ |
| casesensitive | 大文字と小文字を区別する必要があるかどうかを指定します(true、 yes、 onまたは false、 no、 off)。 |
いいえ、デフォルトは 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 属性を同時に使用してマージできます。