我已成功安装最新的.NET SDK,但Windows无法识别它。这表现为以下失败之一:
dotnet --list-sdks
不包含最新的 .NET SDK。项目“MyProject”加载失败:找不到指定的 SDK“Microsoft.NET.Sdk”。
无法找到.NET SDK。检查它是否已安装以及 global.json 中指定的版本(如果有)是否与已安装的版本匹配
当前 .NET SDK 不支持定位 .NET N.N。目标为 .NET N.M 或更低版本,或者使用支持 .NET N.N 的 .NET SDK 版本
如何让 Windows 识别最新安装的 .NET SDK 版本?
从命令行运行
where dotnet
。如果输出类似于:
C:\Program Files (x86)\dotnet\dotnet.exe
C:\Program Files\dotnet\dotnet.exe
然后某个时候32位和64位版本的SDK都已经安装好了。
32 bit --- C:\Program Files (x86)\dotnet\dotnet.exe
64 bit --- C:\Program Files\dotnet\dotnet.exe
计算机上安装的第一个SDK将dotnet路径放入系统路径中。不同位大小 SDK 的任何后续 SDK 安装也会将 dotnet 路径添加到系统路径,但在第一个 dotnet 路径之后。因此,默认情况下,使用
path
变量,只有第一个位大小的 SDK 可用。
有两种方法可以解决此问题:
C:\Program Files (x86)\dotnet\dotnet.exe
和C:\Program Files\dotnet\dotnet.exe
的顺序:选择windows键并输入
Edit
,然后选择编辑系统变量
选择高级选项卡上的环境变量按钮:
选择系统变量下的路径 > 编辑(不是用户变量)。
找到
C:\Program Files\dotnet\dotnet.exe
(64 位)和 C:\Program Files\dotnet\dotnet.exe
(32 位)的条目,然后使用 Move 向上按钮更改顺序。这是一个例子:
选择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
按照上面的建议更改环境变量的顺序就可以了。通过将 c:\programfiles\dotnet 向上移动并将其移到 c:\programfiles(x86)\dotnet 上方解决了问题。此解决方案还解决了以下错误的问题: “找不到指定的 SDK 'Microsoft.NET.Sdk.Web'。”在 Visual Studio 中