👋

Riderで[MSB4198]が出たときの対策

2023/01/26に公開

現象

Riderを2022.3.1にアップデートしたら一部のアセンブリが読み込まれなかった。

どうやらアセンブリに含まれる一部のスクリプトのパスが長すぎるのが原因っぽい。

出てたエラーログは↓みたいな感じだった(再現できなくなっちゃったので内容は適当です)。

[MSB4198] 「長すぎるパス」指定されたパス、ファイル名、またはその両方が長すぎます。完全限定型名は 260 文字未満で指定し、ディレクトリ名は 248 未満で指定してください。

Windowsの設定をいじって長いパスも扱えるようにしたけどそれでもダメだった場合

対策

Riderで指定するMSBuildを変えた
変更前:Auto detected (17.0) - C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe
変更後:C:\Program Files\JetBrains\JetBrains Rider 2022.3.1\tools\MSBuild\Current\Bin\MSBuild.exe

参考

Discussion