📘
dotnet formatがエラーで動かない場合の一時的な回避策
Visual Studio Version 17.1.0 / .NET SDK 6.0.200 がインストールされた環境で
dotnet format をすると以下のエラーが出力される。
Unhandled exception: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Could not load file or assembly 'Microsoft.CodeAnalysis.CSharp, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. 指定されたファイルが見つかりません。
Could not load file or assembly 'Microsoft.CodeAnalysis, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. 指定されたファイルが 見つかりません。
github の dotnet format プロジェクトに、この問題の issue が作られている。コメントに書かれている。
回避策がdotnet-format
の最新のバージョンをインストールして、
dotnet format
ではなく dotnet-format
コマンドを使うとエラーなく実行することができる。
.NET 6 SDKs
dotnet tool install -g dotnet-format --version "6.*" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json
.NET 7 SDKs
dotnet tool install -g dotnet-format --version "7.*" --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json
Discussion