Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に "Two assets found targeting the same path with incompatible asset kinds" エラーが発生する

Bootstrap のパッケージを利用しているプロジェクトでビルド時に "Two assets found targeting the same path with incompatible asset kinds" エラーが発生する現象と対象法について紹介します。

現象

NuGetパッケージでBootstrapを利用しているプロジェクトで次のエラーが発生します。
エラーメッセージ
Two assets found targeting the same path with incompatible asset kinds:
'C:\Users\(ユーザー名)\.nuget\packages\bootstrap\5.2.2\contentFiles\any\any\wwwroot\css\bootstrap-grid.css' with kind 'All' 'C:\(リポジトリのパス)\(ASP.NET Coreプロジェクトのパス)\wwwroot\css\bootstrap-grid.css' with kind 'All' for path 'css/bootstrap-grid.css'
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

原因

NuGetのパッケージディレクトリ内の静的ファイルとプロジェクトのディレクトリのwwwrootに配置された静的ファイルが同じファイルであり、競合しているためと考えられます。

対処法1: bootstrapパッケージをアンインストールする

bootstrapを利用していない場合は、パッケージをアンインストールすると解消できます。

対処法2: wwwrootフォルダを再マウントする

bootstrapを利用している場合は、wwwroot フォルダを再度マウントするとエラーを解消できる場合があります。

手順

エラーが発生しているソリューションを開き、プロジェクトノード内のwwwrootフォルダの項目を右クリックします。 ポップアップメニューが表示されますので、[プロジェクトから除外]の項目をクリックします。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

プロジェクトから除外され、ソリューションエクスプローラーから表示されなくなりました。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

続いて、再マウントします。ソリューションエクスプローラーのウィンドウの上部のツールバーの[すべてのファイルを表示]のボタンをクリックします。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

ボタンをクリックすると、ボタンが押された状態になり、ソリューションに追加していないフォルダも点線のフォルダアイコンで表示される状態になります。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

点線アイコンで表示されている wwwrootのフォルダを選択し、右クリックします。ポップアップメニューの[プロジェクトに含める]の項目をクリックします。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

再度プロジェクトに wwwrootフォルダが追加されました。
Bootstrap のパッケージを利用している ASP.NET Core プロジェクトでビルド時に

リビルドしてエラーが解消されるか確認します。

AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2022-10-23
Copyright © 1995–2025 iPentec all rights reserverd.