Windows 或 Visual Studio 2022 由于位数原因无法找到最新安装的 .NET SDK

问题描述 投票:0回答:2

我已成功安装最新的.NET SDK,但Windows无法识别它。这表现为以下失败之一:

  • dotnet --list-sdks
    不包含最新的 .NET SDK。
  • Windows x64 找不到 .NET 5、.NET 6 或 .NET 7。
  • 尝试打开项目时,Visual Studio 找不到最新的 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 版本?

.net windows .net-core dotnet-sdk
2个回答
60
投票

从命令行运行

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 可用。

有两种方法可以解决此问题:

  1. 安装具有其他位大小的最新 SDK。这是最简单的解决方案。
  2. 更改系统环境变量路径中
    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


0
投票

按照上面的建议更改环境变量的顺序就可以了。通过将 c:\programfiles\dotnet 向上移动并将其移到 c:\programfiles(x86)\dotnet 上方解决了问题。此解决方案还解决了以下错误的问题: “找不到指定的 SDK 'Microsoft.NET.Sdk.Web'。”在 Visual Studio 中

© www.soinside.com 2019 - 2024. All rights reserved.