ASP.NET Core: совместимая версия SDK для global.json версии 2.1.400 не найдена - PullRequest
0 голосов
/ 29 августа 2018

В моем решении есть проект ASP.NET Core, ориентированный на .NET Core 2.1. Я добавил файл global.json на уровне решения:

{
  "sdk": {
    "version": "2.1.400"
  }
}

На агенте Team City я установил MSBuild Tools 2017 (15.8.1), включая .NET Core Build Tools.

Из командной строки я вижу, что SDK 2.1.400 установлен на агенте:

>dotnet --list-sdks
2.1.202 [C:\Program Files\dotnet\sdk]
2.1.400 [C:\Program Files\dotnet\sdk]

Однако в Team City не удается создать решение со следующей ошибкой:

dashboard.csproj : error : Unable to locate the .NET Core SDK. Check that it is installed and that the version specified in global.json (if any) matches the installed version.
Dashboard.csproj : error MSB4236: The SDK 'Microsoft.NET.Sdk.Web' specified could not be found.
A compatible SDK version for global.json version: [2.1.400] from [X:\agent-1\sandbox1\global.json] was not found

Есть идеи, почему он не найдет SDK 2.1.400 при сборке с MSBuild, если он присутствует в списке SDK?

1 Ответ

0 голосов
/ 29 августа 2018

Я наконец понял, что dotnet не был распознан как команда при запуске в Team City (несмотря на то, что dotnet был распознан как команда из приглашения под той же учетной записью Windows).

Решением для меня было обновить переменную окружения PATH с помощью параметров Team City:

Name: env.PATH
Kind: Environment Variable
Value: C:\Program Files\dotnet;%env.PATH%

Теперь работает как положено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...