aspnet-codegeneratorを実行すると「You must install or update .NET to run this application.」が出たときの対処法

対象バージョン

.NET SDK 9.0.305, Mac OS X 13.7

dotnet --info の表示 .NET SDK: Version: 9.0.305 Commit: 3fc74f3529 Workload version: 9.0.300-manifests.ddedba1d MSBuild version: 17.14.21+8929ca9e3

ランタイム環境: OS Name: Mac OS X OS Version: 13.7 OS Platform: Darwin RID: osx-x64 Base Path: /Users/kimihito/.local/share/mise/installs/dotnet/9.0.305/sdk/9.0.305/

インストール済みの .NET ワークロード: 表示するインストール済みワークロードはありません。 新しいマニフェストをインストールするときに loose manifests を使用するように構成されています。

Host: Version: 9.0.9 Architecture: x64 Commit: 893c2ebbd4

.NET SDKs installed: 9.0.305 [/Users/kimihito/.local/share/mise/installs/dotnet/9.0.305/sdk]

.NET runtimes installed: Microsoft.AspNetCore.App 9.0.9 [/Users/kimihito/.local/share/mise/installs/dotnet/9.0.305/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 9.0.9 [/Users/kimihito/.local/share/mise/installs/dotnet/9.0.305/shared/Microsoft.NETCore.App]

Other architectures found: None

Environment variables: DOTNET_ROOT [/Users/kimihito/.local/share/mise/installs/dotnet/9.0.305]

global.json file: Not found

Learn more: https://aka.ms/dotnet/info

Download .NET: https://aka.ms/dotnet/download

起こったこと

dotnet tool install dotnet-aspnet-codegenerator --global でインストール後に、dotnet aspnet-codegenerator を実行すると以下のエラーが出た

You must install or update .NET to run this application.

App: /Users/kimihito/.dotnet/tools/dotnet-aspnet-codegenerator
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '8.0.0' (x64)
.NET location: /Users/kimihito/.local/share/mise/installs/dotnet/9.0.305

The following frameworks were found:
  9.0.9 at [/Users/kimihito/.local/share/mise/installs/dotnet/9.0.305/shared/Microsoft.NETCore.App]

.NET 9 を入れたはずなのに、.NET 8を要求されているよう。

解決法

dotnet tool install--allow-roll-forward オプションを付与することで解決した。

具体的には

dotnet tool install dotnet-aspnet-codegenerator --allow-roll-forward --global とした

関連Issue

github.com