当前的.NET SDK不支持以.NET Core 2.2为目标。 (SDK 2.2.202)

问题描述 投票:1回答:5

许多类似问题中的另一个,但搜索的解决方案都没有帮助(见下面看哪一个)。

在撰写本文时,.NET Core v2.2已经预览,最新版本为v2.2.202(发布日期,02-04-2019)。

我通过“安装其他框架”安装了那个,我安装了x64,我之前安装的所有其他版本也是那个版本。

安装后,当我创建一个新项目时,它会显示:

enter image description here

但是当我打开属性时,它不会:

enter image description here

enter image description here

项目目录中的dotnet --info给出以下结果:

.NET Core SDK (reflecting any global.json):
 Version:   2.2.202
 Commit:    8a7ff6789d

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.2.202\

Host (useful for support):
  Version: 2.2.3
  Commit:  6b8ad509b6

.NET Core SDKs installed:
  2.1.2 [C:\Program Files\dotnet\sdk]
  2.1.4 [C:\Program Files\dotnet\sdk]
  2.1.201 [C:\Program Files\dotnet\sdk]
  2.1.202 [C:\Program Files\dotnet\sdk]
  2.1.401 [C:\Program Files\dotnet\sdk]
  2.1.505 [C:\Program Files\dotnet\sdk]
  2.2.202 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.3-servicing-26724-03 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

我试过了:

  • 创建一个global.json(SO answer),这只会产生更多错误,因为它无法加载定位到v2.2的项目
  • 在“设置”中启用预览SDK(SO answer
  • 我已经尝试安装x86版本,但这也给出了更多的错误,因为它对于现在使用哪一个感到困惑。因此开始抱怨没有安装.NET Standard。
  • 我已将Visual Studio和Visual Studio Build Tools更新到最新版本,即15.9.11(发布日期,02-04-2019)
  • 当我通过解决方案目录中的命令行dotnet build构建时,它构建成功,因此它必须是可视化工作室的东西。
  • 验证只有C:\Program Files\dotnet\在环境变量中,所以C:\Program Files (x86)\dotnet\不存在。
  • 看看these options,做了所有这些,但我没有设置MSBuildSDKsPath环境变量,因为我还有其他需要2.1的项目。我检查了当前没有设置MSBuildSDKsPath因此不应该强制使用该版本。

enter image description here

所有上述尝试当然都涉及重启计算机或重启VS.

c# visual-studio .net-core .net-core-2.2
5个回答
6
投票

这很可能看起来像VS的安装程序优化,删除过于贪婪的旧SDK并删除旧VS版本所依赖的版本,但目前这是MS团队正在调查的更多假设。有关更多类似的报告,请参阅this GitHub issue

2.2.1xx SDK(!)版本使用MSBuild 15,2.2.2xx使用MSBuild 16。

VS 2017需要解析与MSBuild 15兼容的本地版本,因此如果在升级过程中删除了2.2.1xx,则可能会失败。

您可以通过重新安装兼容版本来解决此问题 - 例如2.2.105 - 来自https://dotnet.microsoft.com/download/dotnet-core/2.2

为了找出哪个SDK使用哪个组件,您可以检查<3.0源代码中的DependencyVersions.props文件和q => 3.0(预览)源代码的Versions.props文件 - 通过MicrosoftBuildPackageVersion属性设置MSBuild版本。


0
投票

Pff,经过越来越多的挖掘,我试图安装旧版本的.NET Core 2.2。我安装了SDK v2.2.100(第一个稳定版)。这似乎适用于视觉工作室不再显示错误。因此,即使Visaul Studio V15.9.11和.NET Core SDK v2.2.202在同一天发布(因此假设它们一起发布),如果没有安装以前版本的SDK v2.2.x,它仍然会出错


0
投票

https://github.com/aspnet/AspNetCore.Docs/issues/11844添加@ martin-ullrich的答案,因为它对我来说更有意义。 (也许'因为它是星期五,我只需要:“去这里做这个。”)

转到https://dotnet.microsoft.com/download/dotnet-core/2.2并下载2.2.105版本的安装程序。任何> = 2.2.200将无法在VS 2017中运行.2.2.105和2.2.202都包含最新和最好的.NET Core 2.2版本,但它们所包含的工具版本不同且基于1xx列车是MSBuild 15.,NuGet 4.等和2xx列车是MSBuild 16.,NuGet 5.等等,Visual Studio只查找与其版本的MSBuild兼容的最新版本 - 对于VS 2017这是2.1.502版本它不能以.NET Core 2.2为目标。 (并且为了增加更多的混乱,现在有2.1.6xx版本与VS 2019工具版本以及.NET Core 2.1运行时)

[@] leecow和[@] rowanmiller正在努力更新关于VS的页面,另见dotnet / core#2542和dotnet / sdk#3076这些问题大致相同。


我的贡献:在安装2.2.105后,我删除了目录C:\Program Files (x86)\dotnet\sdk和/或C:\Program Files\dotnet\sdk中名为'2.2.202'的文件夹,以便dotnet --info现在读取以下内容:

enter image description here


0
投票

安装dotnet-sdk-2.2.103-win-x64解决了这个问题


0
投票

使用Visual Studio 2019而不是2017如果你想使用asp.net核心版本更多v2.2.100 https://github.com/aspnet/AspNetCore.Docs/issues/11844

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