ResolveAssemblyReference タスク
指定したアセンブリに依存するすべてのアセンブリを決定します。 これには、2 番目および n 番目の依存関係も含まれます。
パラメーター
ResolveAssemblyReference タスクのパラメーターの説明を次の表に示します。
パラメーター |
説明 |
---|---|
AllowedAssemblyExtensions |
省略可能な String[] 型のパラメーターです。 参照の解決時に使用するアセンブリ ファイル名拡張子。 既定のファイル名拡張子は、.exe および .dll です。 |
AllowedRelatedFileExtensions |
省略可能な String[] 型のパラメーターです。 相互に関連するファイルの検索に使用するファイル名拡張子。 既定の拡張子は、.pdb および .xml です。 |
AppConfigFile |
省略可能な String 型のパラメーターです。 bindingRedirect マッピングを解析および抽出する元になる app.config を指定します。 このパラメーターを指定する場合は、AutoUnify パラメーターを false にする必要があります。 |
AutoUnify |
省略可能な Boolean 型のパラメーターです。 このパラメーターは、標準の App.Config ファイルを持つことができない DLL などのアセンブリのビルドに使用されます。 true の場合、生成される依存グラフは、AppConfigFile パラメーターに渡される App.Config ファイルが存在するものと仮定して自動的に処理されます。 この仮想 App.Config ファイルには、最高バージョンのアセンブリが選択されるように、競合するアセンブリ セットごとに bindingRedirect エントリがあります。 この結果、すべての競合が解決されるため、競合アセンブリに関する警告は発生しません。 true の場合、再割り当てのたびに高優先度コメントが作成されます。このコメントでは、古いバージョンと新しいバージョンが示され、また AutoUnify が true であったことが示されます。 true の場合、AppConfigFile パラメーターを空にする必要があります。 false の場合、アセンブリ バージョンの再割り当ては自動的には発生しません。 アセンブリの 2 つのバージョンが存在する場合は、警告が発行されます。 false の場合、同じアセンブリの異なるバージョン間に存在する競合ごとに、高優先度コメントが発生します。 これらのコメントの後に、単一の警告が発行されます。 この警告には、一意のエラー コードと「同じ依存アセンブリの異なるバージョン間での競合が見つかりました。」というテキストが含まれます。 |
Assemblies |
省略可能な ITaskItem[] 型のパラメーターです。 完全パスと依存関係を特定する必要のあるアイテムを指定します。 これらのアイテムには、"System" のような簡易名、または、"System, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" のような厳密な名前を指定できます。 このパラメーターに渡されるアイテムには、オプションで次のアイテム メタデータを指定できます。
|
AssemblyFiles |
省略可能な ITaskItem[] 型のパラメーターです。 依存関係を見つける対象の完全修飾アセンブリのリストを指定します。 このパラメーターに渡されるアイテムには、オプションで次のアイテム メタデータを指定できます。
|
AutoUnify |
省略可能な Boolean 型のパラメーターです。 true の場合、生成される依存グラフは、AppConfigFile パラメーターに渡される App.Config ファイルが存在するものと仮定して自動的に処理されます。 この仮想 App.Config ファイルには、最高バージョンのアセンブリが選択されるように、競合するアセンブリ セットごとに bindingRedirect エントリがあります。 この結果、すべての競合が解決されるため、競合アセンブリに関する警告は発生しません。 再割り当てのたびに高優先度コメントが作成されます。このコメントでは、古いバージョンと新しいバージョンが示され、また AutoUnify が true であるためにこの操作が自動的に実行されたことが示されます。 false の場合、アセンブリ バージョンの再割り当ては自動的に発生しません。 アセンブリの 2 つのバージョンが存在する場合は、警告が発生します。 同じアセンブリの異なるバージョン間に存在する競合ごとに、高優先度コメントが発生します。 これらのコメントがすべて表示されると、一意のエラー コードと「同じ依存アセンブリの異なるバージョン間での競合が見つかりました。」というテキストを示す単一の警告が表示されます。 既定値は false です。 |
CandidateAssemblyFiles |
省略可能な String[] 型のパラメーターです。 検索および解決プロセスで使用するアセンブリのリストを指定します。 このパラメーターに渡される値は、絶対ファイル名またはプロジェクトの相対ファイル名である必要があります。 SearchPaths パラメーターに、考慮するパスの 1 つとして {CandidateAssemblyFiles} が含まれている場合、このリストのアセンブリが考慮されます。 |
CopyLocalDependenciesWhenParentReferenceInGac |
省略可能な [Boolean] 型のパラメーターです。 true の場合、依存関係がローカルにコピーされるかどうかを確認するために、実行されるチェックのいずれかで、プロジェクト ファイルの親参照にプライベート メタデータが設定されているかどうかが確認されます。 メタデータが設定されている場合は、そのプライベートの値が依存関係として使用されます。 メタデータが設定されていない場合、依存関係では、親参照と同じチェックが実行されます。 これらのチェックの 1 つでは、その参照が GAC に存在するかどうかを確認します。 参照が GAC に存在する場合、コピー先のコンピューターの GAC に存在すると見なされるため、ローカルにコピーされません。 これは特定の参照だけに当てはまり、依存関係には当てはまりません。 たとえば、GAC に存在するプロジェクト ファイルの参照はローカルにコピーされませんが、その依存関係は GAC に存在しないためローカルにコピーされます。 false の場合、プロジェクト ファイルの参照が GAC に存在するかどうかがチェックされ、必要に応じてローカルにコピーされます。 依存関係が GAC に存在するかどうかがチェックされ、プロジェクト ファイルからの親参照が GAC に存在するかどうかもチェックされます。 プロジェクト ファイルからの親参照が GAC に存在する場合、依存関係はローカルにコピーされません。 このパラメーターが true また false のいずれであっても、複数の親参照が存在し、そのいずれも GAC に存在していない場合は、それらすべてがローカルにコピーされます。 |
CopyLocalFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 ResolvedFiles、ResolvedDependencyFiles、RelatedFiles、SatelliteFiles、および ScatterFiles パラメーターの各ファイルのうち、CopyLocal アイテム メタデータの値が true であるファイルを返します。 |
FilesWritten |
省略可能な ITaskItem[] 型の出力パラメーターです。 ディスクに書き込まれるアイテムが含まれます。 |
FindDependencies |
省略可能な Boolean 型のパラメーターです。 true である場合、依存関係が検索されます。 それ以外の場合は、プライマリ参照のみが検索されます。 既定値は true です。 |
FindRelatedFiles |
省略可能な Boolean 型のパラメーターです。 true の場合、.pdb ファイルや .xml ファイルなどの関連ファイルが検索されます。 既定値は true です。 |
FindSatellites |
省略可能な Boolean 型のパラメーターです。 true の場合、サテライト アセンブリが検索されます。 既定値は true. です。 |
FindSerializationAssemblies |
省略可能な Boolean 型のパラメーターです。 true の場合、シリアル化アセンブリが検索されます。 既定値は true です。 |
FullFrameworkAssemblyTables |
省略可能な ITaskItem[] 型のパラメーターです。 "FrameworkDirectory" メタデータを持つアイテムを指定して、再頒布リストと特定のフレームワーク ディレクトリを関連付けます。 関連付けが行われていない場合は、エラーがログに記録されます。 アセンブリ参照の解決 (RAR: Resolve Assembly Reference) のロジックでは、FrameworkDirectory が設定されていない場合、ターゲット フレームワーク ディレクトリが使用されます。 |
FullFrameworkFolders |
省略可能な [String][] 型のパラメーターです。 RedistList ディレクトリが含まれる一連のフォルダーを指定します。 このディレクトリは、指定されたクライアント プロファイルのフレームワーク全体を表します (たとえば、%programfiles%\reference assemblies\microsoft\framework\v4.0)。 |
FullTargetFrameworkSubsetNames |
省略可能な String[] 型のパラメーターです。 ターゲット フレームワークのサブセット名のリストが含まれます。 リスト内のサブセット名が TargetFrameworkSubset 名プロパティ内の名前と一致する場合、ビルド時にその特定のターゲット フレームワーク サブセットが除外されます。 |
IgnoreDefaultInstalledAssemblyTables |
省略可能な Boolean 型のパラメーターです。 true の場合、TargetFrameworkDirectories の下の \RedistList ディレクトリにある、インストールされた追加のアセンブリ テーブル (または "再頒布リスト") が検索され、使用されます。 既定値は false. です。 |
IgnoreDefaultInstalledAssemblySubsetTables |
省略可能な Boolean 型のパラメーターです。 true の場合、TargetFrameworkDirectories の下の \SubsetList ディレクトリにある、インストールされた追加のアセンブリ サブセット テーブル (または "サブセット リスト") が検索され、使用されます。 既定値は false. です。 |
InstalledAssemblySubsetTables |
省略可能な ITaskItem[] 型のパラメーターです。 ターゲット サブセットに含められることが期待されるアセンブリを指定する XML ファイルのリストを含みます。 必要に応じて、このリスト内のアイテムは "FrameworkDirectory" メタデータを指定して InstalledAssemblySubsetTable と 特定のフレームワーク ディレクトリを関連付けることができます。 TargetFrameworkDirectories 要素が 1 つだけの場合、このリスト内の "FrameworkDirectory" メタデータを持たないアイテムは、TargetFrameworkDirectories に渡される一意の値に設定されているものとして扱われます。 |
InstalledAssemblyTables |
省略可能な String 型のパラメーターです。 ターゲット コンピューターにインストールされることが期待されるアセンブリを指定する XML ファイルのリストを含みます。 InstalledAssemblyTables が設定されている場合、リスト内の以前のバージョンのアセンブリは、XML で指定されている新バージョンにマージされます。 また、InGAC='true' が設定されているアセンブリは必須と見なされ、明示的にオーバーライドされない限り、CopyLocal='false' に設定されます。 必要に応じて、このリスト内のアイテムは "FrameworkDirectory" メタデータを指定して InstalledAssemblyTable と特定のフレームワーク ディレクトリを関連付けることができます。 ただし、この設定は、再頒布名が "Microsoft-Windows-CLRCoreComp" で始まらない場合は無視されます。 TargetFrameworkDirectories 要素が 1 つだけの場合、このリスト内の "FrameworkDirectory" メタデータを持たないアイテムは、 TargetFrameworkDirectories に渡される一意の値に設定されているものとして扱われます。 |
LatestTargetFrameworkDirectories |
省略可能な String[] 型のパラメーターです。 コンピューター上で対象にすることができる最新のフレームワークの再領布リストを含むディレクトリの一覧を指定します。 これが設定されていない場合、指定されたターゲット フレームワーク識別子についてコンピューターにインストールされている最上位のフレームワークが使用されます。 |
ProfileName |
省略可能な [String] 型のパラメーターです。
|
RelatedFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 参照と同じ基本名を持つ XML ファイルや .pdb ファイルなどの関連ファイルが含まれます。 このパラメーターで指定されるファイルには、オプションで次のアイテム メタデータを含めることができます。
|
ResolvedDependencyFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 依存関係への n 番目のパスが含まれます。 このパラメーターには、ResolvedFiles パラメーターに含まれている最初のプライマリ参照は含まれていません。 このパラメーターのアイテムには、オプションで次のアイテム メタデータを含めることができます。
|
ResolvedFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 完全パスに解決されるすべてのプライマリ参照のリストが含まれています。 このパラメーターのアイテムには、オプションで次のアイテム メタデータを含めることができます。
|
SatelliteFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 見つかったサテライト ファイルを指定します。 このアイテムが存在する原因となった参照または依存関係が CopyLocal=true の場合、これらのパラメーターは CopyLocal=true となります。 このパラメーターのアイテムには、オプションで次のアイテム メタデータを含めることができます。
|
ScatterFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 指定されたアセンブリの 1 つに関連付けられた scatter ファイルが含まれています。 このパラメーターのアイテムには、オプションで次のアイテム メタデータを含めることができます。
|
SearchPaths |
必須の String[] 型のパラメーターです。 アセンブリを表すディスクのファイルを見つけるために検索されるディレクトリまたは特別な場所を指定します。 一覧に検索パスを並べる順序は重要です。 各アセンブリに対して、パスのリストは左から右に検索されます。 アセンブリを表すファイルが見つかると、検索は停止し、次のアセンブリの検索を開始します。 このパラメーターには、次の型の値を指定できます。
|
SerializationAssemblyFiles |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 見つかった XML シリアル化アセンブリが格納されます。 このアイテムが存在する原因となった参照または依存関係が CopyLocal=true の場合に限り、これらのアイテムは CopyLocal=true とマークされます。 Boolean メタデータ CopyLocal は、指定された参照を出力ディレクトリにコピーする必要があるかどうかを示します。 |
Silent |
省略可能な Boolean 型のパラメーターです。 true の場合、メッセージはログに記録されません。 既定値は false です。 |
StateFile |
省略可能な String 型のパラメーターです。 このタスクの中間ビルド状態の保存場所を示すファイル名を指定します。 |
SuggestedRedirects |
省略可能な ITaskItem[] 型の読み取り専用出力パラメーターです。 AutoUnify パラメーターの値にかかわらず、すべての独立した競合アセンブリごとに 1 つのアイテムが含まれます。 このパラメーターには、アプリケーション構成ファイルに適切な bindingRedirect エントリが存在しないことが判明したすべてのカルチャと PKT が含まれます。 各アイテムには、オプションで次の情報を含めることができます。
|
TargetedRuntimeVersion |
省略可能な String 型のパラメーターです。 ターゲットのランタイム バージョン (たとえば、2.0.57027 または v2.0.57027) を指定します。 |
TargetFrameworkDirectories |
省略可能な String[] 型のパラメーターです。 ターゲット フレームワーク ディレクトリのパスを指定します。 このパラメーターは、生成されるアイテムの CopyLocal ステータスを決定するために必要です。 このパラメーターが指定されていない場合、そのソース アイテムの Private メタデータ値が明示的に true である場合を除いて、生成されるアイテムの CopyLocal 値は true にはなりません。 |
TargetFrameworkMoniker |
省略可能な String 型のパラメーターです。 監視する TargetFrameworkMoniker です (ある場合)。 これは、ログ作成用に使用されます。 |
TargetFrameworkMonikerDisplayName |
省略可能な String 型のパラメーターです。 監視する TargetFrameworkMoniker の表示名です (ある場合)。 これは、ログ作成用に使用されます。 |
TargetFrameworkSubsets |
省略可能な String[] 型のパラメーターです。 ターゲット フレームワーク ディレクトリ内で検索されるターゲット フレームワークのサブセット名のリストを含みます。 |
TargetFrameworkVersion |
省略可能な String 型のパラメーターです。 プロジェクトのターゲット フレームワークのバージョンです。 既定値は空です。この場合、ターゲット フレームワークに基づく参照のフィルター処理はありません。 |
TargetProcessorArchitecture |
省略可能な String 型のパラメーターです。 優先されるターゲット プロセッサ アーキテクチャ。 グローバル アセンブリ キャッシュ (GAC: Global Assembly Cache) 参照を解決するために使用されます。 このパラメーターの値には、x86、IA64、または AMD64 を指定できます。 このパラメーターがない場合、タスクは実行中のプロセスのアーキテクチャに適合するアセンブリを検討します。 アセンブリが見つからない場合、タスクは MSIL 値が ProcessorArchitecture の GAC アセンブリまたは ProcessorArchitecture 値がない GAC アセンブリを検討します。 |
解説
上記のパラメーター以外に、このタスクは TaskExtension クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。 これらの追加のパラメーターの一覧とその説明については、「TaskExtension 基本クラス」を参照してください。