Windows找不到最新安装的.NETSDK
我已经成功安装了最新的 .NET SDK,但 Windows 无法识别它。这表现为以下故障之一:
dotnet --list-sdks不包括最新的 .NET SDK。- Windows x64 找不到 .NET 5 或 .NET 6。
- 尝试打开项目时,Visual Studio 找不到最新的 SDK 或引发以下错误之一:
-
项目“MyProject”加载失败:未找到指定的 SDK“Microsoft.NET.Sdk”。
-
无法找到 .NET SDK。检查它是否已安装以及 global.json 中指定的版本(如果有)是否与安装的版本匹配
-
当前 .NET SDK 不支持面向 .NET Core NN 面向 .NET Core NM 或更低版本,或使用支持 .NET Core NN 的 .NET SDK 版本
-
如何让 Windows 识别最新安装的 .NET SDK 版本?
回答
运行where dotnet命令行。如果输出类似于:
C:Program Files (x86)dotnetdotnet.exe
C:Program Filesdotnetdotnet.exe
然后在某个时间安装了 32 位和 64 位版本的 SDK。
32 bit --- C:Program Files (x86)dotnetdotnet.exe
62 bit --- C:Program Filesdotnetdotnet.exe
计算机上安装的第一个 SDK 将 dotnet 路径放在系统路径中。任何不同位大小 SDK 的后续 SDK 安装也会将 dotnet 路径添加到系统路径,但在第一个 dotnet 路径之后。因此,默认情况下只有第一位大小的 SDK 可用,使用path变量。
有两种方法可以解决问题:
- 安装具有其他位大小的最新 SDK。这是最简单的解决方案。
- 更改系统环境变量路径中
C:Program Files (x86)dotnetdotnet.exe和的顺序C:Program Filesdotnetdotnet.exe:
选择 windows 键并输入Edit,然后选择Edit the system variables
选择高级选项卡上的环境变量按钮:
在系统变量(不是用户变量)下选择路径>编辑。
找到C:Program Filesdotnetdotnet.exe(64 位) 和C:Program Filesdotnetdotnet.exe(32 位)的条目,然后使用上移按钮更改顺序。下面是一个例子:
选择OK按钮,直到所有窗口都关闭。打开一个新的命令提示符并运行 where dotnet。
从回答https://github.com/dotnet/core/issues/5962
在更多细节https://weblog.west-wind.com/posts/2019/Apr/20/Adventures-in-NET-SDK-Installation- SDKs-not-Showing-Up