この記事では、MSB4232エラー コードについて説明します。
メッセージ テキスト
MSB4232: Items that are outside Target elements must have one of the following operations: Include, Update, or Remove.
説明
MSBuild アイテムとは、属性 Include
(特定の項目をリストに追加)、 Exclude
(特定の項目を追加しない)、 Update
(アイテム メタデータの更新)、 Remove
(リストから 1 つ以上の項目を削除) の使用によって決定されるリストです。 MSBuild 項目を参照してください。
ターゲットの外部にある MSBuild 項目は定義され、設定される必要があります。そのため、少なくとも 1 つの Include
、 Update
、または Remove
が使用されることが予想されます。 ただし、ターゲット内では、項目が既に定義および設定されている必要があるため、ターゲット内でこれらの属性を省略してもエラーになりません。 ターゲットで、 Include
も Remove
も指定されていない場合、MSBuild は更新操作を実行します。
解決策
項目宣言を確認し、その正しいロジックを決定します。 プロジェクト ファイル内の項目が最初に定義され、設定されている場所を確認し、正確性を確認します。 以前に定義した項目を操作する場合は、ターゲット内でその項目に対して操作を配置することを検討してください。 ターゲット内で、 Include
または Remove
を指定しない場合、操作は更新と見なされます。
詳細な診断を有効にする (MSBuild コマンド ラインで-v:diag
を使用する、または Visual Studio のツール、オプション、プロジェクト、ソリューション、ビルドと実行で詳細レベルを設定する)、またはバイナリ ロガー (-bl
) を有効にして、MSBuild 構造化ログ ビューアーを使用します。
対象
MSBuild のすべてのバージョン