无法找到global.json指定的.NET SDK,请检查指定版本是否已安装

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

尝试启动 .NET 控制台应用程序。更喜欢 F#,但在 C# 或 VB 中也会遇到相同的错误。

Unable to locate the .NET SDK as specified by global.json, please check that the specified version is installed
。我一创建新应用程序就收到该警告,并在尝试构建时收到错误。

这是使用 Visual Studio 附带的默认 Hello World 模板。我希望第一次构建应用程序附带的预构建模板。使用VS 2019 16.8.5.

我搜索了 Visual Studio 项目和源目录,找不到任何 global.json。

编辑:在 C:\users\username 找到 global.json

{
  "sdk": {
    "version": "3.1.300",
    "rollForward": "latestMinor"
  }
}

我相当确定我已经安装了 SDK,但会仔细检查。

c# .net vb.net f#
6个回答
28
投票

就我而言,我的 global.json 指的是我没有的 SDK。在终端中运行以下命令

dotnet --list-sdks

这将为您提供所有可用 SDK 的列表,在这里您可以将 global.json 文件更新到您拥有的版本(或者根据需要安装缺少的 SDK)


5
投票

我建议删除该

global.json
文件,而不是仅向其中添加
latestMajor
,因为它位于可能不应该在的位置。在
C:\users\your-name
的根中拥有一个具有该值的函数在功能上等同于一开始就没有它。

global.json
文件的一般用途是锁定用于特定代码库的SDK版本。例如,如果您使用的 CI 系统可以安装基于
global.json
文件的 .NET SDK,那么这会很有帮助,这样您就无需在多个位置随时间更新工具集。


2
投票

检查前滚是否禁用 如果禁用,请将其设为最新次要

“rollForward”:“latestMinor”


2
投票

在 C# 解决方案的根目录中发现 global.json 文件后,我修复了此问题。这个json文件指定了.Net 7的特定子版本,删除解决方案级别的global.json后,构建错误得到解决。

其他信息:在我的本地 PC 上克隆 GitHub 存储库后,我出现了此问题。 C# 存储库包含两个解决方案,问题 global.json 文件在两个解决方案的公共目录根中声明,但在 VS2022 解决方案资源管理器中不可见。


0
投票

我遇到了类似的问题,我的错误是......

警告:NuGetSdkResolver 未解析此 SDK,因为项目或 global.json 中未指定版本。

我试图使用 cli 构建我的应用程序

dotnet build

所以我发现其他人在 GitHub 上谈论类似的问题,这使得它看起来像是一个 路径问题,所以我查看了 Microsoft Docs 以检查 dotnet 版本这里

检查安装文件夹

可能已安装 .NET,但未将其添加到操作系统或用户配置文件的 PATH 变量中。在这种情况下,前面部分中的命令可能不起作用。作为替代方案,您可以检查 .NET 安装文件夹是否存在。

当您从安装程序或脚本安装 .NET 时,它会安装到标准文件夹中。大多数时候,您用来安装 .NET 的安装程序或脚本都会为您提供安装到其他文件夹的选项。如果您选择安装到其他文件夹,请调整文件夹路径的开头。


dotnet executable
C:\program files\dotnet\dotnet.exe

.NET SDK
C:\program files\dotnet\sdk\{version}\

.NET Runtime
C:\program files\dotnet\shared\{runtime-type}\{version}\

所以我添加了环境变量的路径,如下所示......

  • 我现在主要运行.NET6
C:\Program Files\dotnet\sdk\6.0.405\
C:\Program Files\dotnet\dotnet.exe
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\6.0.13\
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\6.0.13\
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\6.0.13\

现在它对我有用


0
投票

我已经下载了sdk版本,重启VS后一切工作

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