使用Blazor Asp.NetCore托管模板时,出现“NETSDK1045当前的.NET SDK不支持.NET Core 3.0作为目标”

yrwegjxp  于 2023-03-13  发布在  .NET
关注(0)|答案(8)|浏览(208)

我已经安装了.NetCore 3.0的预览版,并尝试在Visual Studio 2019中运行blazor模板Blazor (ASP.NET Core hosted)

发生的错误如下:
NETSDK1045当前的.NET SDK不支持将.NET Core 3.0作为目标。请将.NET Core 2.2或更低版本作为目标,或者使用支持.NET Core 3.0的.NET SDK版本。

brqmpdu1

brqmpdu11#

在这些天里,我不得不在许多不同的开发机器/容器上克服这个问题:最后,我发现不下6个不同的原因可能导致这种错误:
1.缺少.NET核心3 SDK(x86或x64)

  1. VS 2019中未启用.NET核心SDK预览支持
  2. VS 2017代替VS 2019
  3. PATH环境变量中的SDK路径错误
  4. MSBuildSDKsPath环境变量中的SDK路径错误
    1.项目的global.json文件中的SDK版本错误
    这些场景的解决方法很容易理解,基本上你要么安装正确的SDK,要么删除“违规的”SDK引用。然而,我尽了最大努力在我的博客中将它们全部记录在this post中。
uxhixvfz

uxhixvfz2#

在这条评论之后,我设法通过在x64版本的基础上额外安装x86版本的.NET Core 3. 0来解决这个问题。重新启动Visual Studio(2019)后,构建工作正常。

jdgnovmf

jdgnovmf3#

对我来说,解决方案是删除一个路径变量MSBuildSDKsPath--因为我研究了预览版SDK的i,在某个时候声明了这个变量来修复另一个SDK bug --看起来像是强制设置了使用的版本。所以在我的例子中,它被设置为3.0.100,当尝试使用3.1.300时导致了错误

sy5wg1nm

sy5wg1nm4#

我得到了同样的错误,并解决它与检查选项“使用预览的.NET核心SDK(需要重新启动)".打开工具〉选项,并尝试查看“预览功能”或“.NET核心”取决于您的Visual Studio版本.当心VS更新,他们可以禁用它.

dfty9e19

dfty9e195#

这是一个很有黑客感觉的解决方案,但至少它起作用了。假设您已经安装了3.0.100-rc 1 -014190的SDK。它如预期的那样显示在dotnet --list-sdks中,但似乎仍然没有被Visual Studio检测到,并且当您尝试从dotnet CLI构建或测试任何东西时,您会得到相同的NETSDK 1405错误。
查找dotnet SDK安装目录(通常为C:\Program Files\dotnet\sdk)。您应该在其中看到预览版SDK。创建一个副本或重命名现有文件夹以删除预览版后缀。例如,3.0.100-rc1-014190将改为3.0.100,如下所示:

这样做使.Net Core 3预览版支持最终在VS 2019 Preview 4和dotnet CLI中工作。

cl25kdpy

cl25kdpy6#

对我来说,这就像在Visual Studio 2019中启用预览一样简单。不幸的是,大多数展示如何做到这一点的帖子我相信都过时了。我终于遇到了这个堆栈溢出帖子How to enable .NET Core 3 preview SDK in VS2019?他们移动了复选框,它在默认情况下对我来说没有打开。

j13ufse2

j13ufse27#

这是一个令人沮丧的问题,在对VS做了所有更新后,仍然无法安装,我将其跟踪到一个环境变量。尝试删除MSBuildSDKsPath,看看是否可以修复您的问题。

sg3maiej

sg3maiej8#

我已经安装了.NET 7,但是每次尝试运行它时都会发生此错误。在我更新Visual Studio后,此问题得到了解决。

相关问题