Использование TFS 2018 для создания решения с VS 2019

Можно ли использовать сервер TFS 2018 (версия 16.131.27701.1) для создания программы C # с Visual Studio 2019? Если да, то как?

У меня есть агент сборки (с агентом Azure Pipelines v2.184.0), на котором установлена ​​Visual Studio 2019. TFS сообщает, что имеет следующие возможности:

Возможности MSBuild

Возможности Visual Studio

В моем конвейере сборки я пробовал как задачу Visual Studio Build, так и задачу MSBuild. Однако для обеих задач я могу выбрать только версию Visual Studio до 2017 года:

Выбор версии Visual Studio  Выбор версии MSBuild

При использовании последней версии автоматически возвращается версия 4.0:

Файл проекта содержит ToolsVersion = 16.0. Этот набор инструментов может быть неизвестен или отсутствовать, и в этом случае вы можете решить эту проблему, установив соответствующую версию MSBuild, или сборка могла быть принудительно переведена на конкретную версию Tools по причинам политики. Обработка проекта так, как если бы он имел ToolsVersion = 4.0.

Я даже пробовал вручную указать путь к MSBuild 16.0:

Путь к MSBuild

Затем я получаю другую ошибку:

C: \ Program Files \ dotnet \ sdk \ 5.0.201 \ Sdks \ Microsoft.NET.Sdk \ target \ Microsoft.PackageDependencyResolution.targets (241,5): ошибка NETSDK1004: файл активов 'C: \ Users [...] \ obj \ project.assets.json 'не найден. Запустите восстановление пакета NuGet, чтобы создать этот файл.

Однако задача восстановления NuGet находится прямо перед задачей MSBuild и успешно завершена!


person gartenriese    schedule 19.03.2021    source источник


Ответы (1)


Обычно VS и TFS соответствуют текущим версиям, основная причина заключается в том, что агент TFS 2018 не может определить возможности VS 2019, поскольку VS 2019 в этот раз не выпущен. Например, в TFS 2018 он будет поддерживать VS 2017 и предыдущие версии, в Azure DevOps server 2019 он будет поддерживать VS 2019 и предыдущие версии. И в настоящее время мы находим, что какой-то разработчик может заставить VS2019 работать в TFS2018, используя агент 2.159.2. Мы рекомендуем вам загрузить версию 2.159.2 и использовать задачу MSbuild, чтобы повторить попытку.

person Yujun Ding-MSFT    schedule 25.03.2021
comment
Попробую установить версию 2.159.2. Однако мне интересно, почему это не работает с более новой версией? Как вы можете видеть в моем вопросе, я уже использую версию 2.184.0, которая новее, чем предложенная вами версия. - person gartenriese; 26.03.2021