dotnet SDK 2.2.104 не компилирует .NET Core 2.2 - PullRequest
0 голосов
/ 12 марта 2019
  1. У меня .NET Sdk версии 2.1 и ниже.
  2. Я установил SDK2.2 и SDK3.
  3. Я удалил SDK3

Сейчас, VS17 успешно собрал и протестировал мое решение.

Но из командной строки с помощью dotnet-cli я не могу скомпилировать решение, потому что он говорит, что он sdk2.1.

dotnet build :

C:\Program Files\dotnet\sdk\2.1.500\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): error NETSDK1045: The current .NET SDK does not support targeting .NET Core 2.2.  Either target .NET Core 2.1 or lower, or use a version of the .NET SDK that supports .NET Core 2.2. [C:\Users\.......\WebApi.csproj]

Build FAILED.

dotnet --info :

.NET Core SDK (reflecting any global.json):
 Version:   2.2.104
 Commit:    73f036d4ac

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

Host (useful for support):
  Version: 2.2.2
  Commit:  a4fd7b2c84

.NET Core SDKs installed:
  2.1.500 [C:\Program Files\dotnet\sdk]
  2.2.104 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

WebApi.csproj :

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    .
    .
    .
  </PropertyGroup>
</Project>

1 Ответ

0 голосов
/ 12 марта 2019

Благодаря livarcocc мы знаем, что проблема в переменной окружения MSBuildSDKsPath, которая по-прежнему указывает на sdk2.1.

Для решения проблемы нам нужно перенастроить MSBuildSDKsPath до версии SDK, которую мы хотим, или полностью удалите эту переменную.

До:

set MSBuildSDKsPath
MSBuildSDKsPath=C:\Program Files\dotnet\sdk\2.1.500\Sdks

После:

set MSBuildSDKsPath
MSBuildSDKsPath=C:\Program Files\dotnet\sdk\2.2.104\Sdks
...