TFS 2017 - Build Server не собирает Visual Studio 2017

После обновления Visual Studio 2017 на прошлой неделе на моем сервере сборки MS Build 15.0 больше не используется. Поэтому всякий раз, когда я пытаюсь скомпилировать проекты Visual Studio 2017, в которых используется новая функция, они терпят неудачу.

Предупреждение в журнале сборки:

Visual Studio версии 15 .0 не найден. Ищете последнюю версию.

И ошибка:

something.cs (542,41): ошибка CS1525: недопустимый термин выражения 'int'

Это связано с тем, что сервер сборки использует MS build 14.0, я думаю.

Пока у меня есть 1- Удалить и переустановить Visual Studio 2017 на сервере сборки. 2- Установлены «Visual Studio Build Tools 2017».

И ничего не работает. Я прочитал несколько статей и, по-видимому, в реестре отсутствуют значения, но я не знаю, как их создать.

Цените вашу помощь по этой теме.

Я использую последние обновления TFS 2017 SP1 (локально) и Visual Studio 2017.


person Barsham    schedule 04.09.2017    source источник
comment
Требуется ли для задачи сборки явно версия vs 2017 / msbuild 15? вы уже обновили до TFS 2017 update 2?   -  person Martin Ullrich    schedule 04.09.2017
comment
@MartinUllrich, но они требуют по сравнению с 2017 годом. Хотя я еще не установил Обновление 2.   -  person Barsham    schedule 04.09.2017


Ответы (2)


Это может быть связано с тем, что VS устанавливается после настройки агента сборки. Затем повторно зарегистрируйте агент сборки в TFS, поскольку возможности системы обнаруживаются только при первой настройке агента - любые изменения, сделанные после этого, не фиксируются.

Другие способы, пожалуйста, обратитесь к этому аналогичному вопросу: Нет агента можно найти со следующими возможностями: msbuild, visualstudio, vstest?

Или установите на данный момент последнюю версию агента, которая похоже, способен обнаруживать VS2017.

Также не забудьте выбрать VS2017 в раскрывающемся списке Версия Visual Studio в Задаче сборки Visual Studio.

введите здесь описание изображения

person PatrickLu-MSFT    schedule 04.09.2017
comment
Агент должен повторно обнаруживать возможности при каждом запуске, поэтому перезапуск агента также должен работать. - person Martin Ullrich; 04.09.2017
comment
Неа. Создал совершенно нового агента, отключил все остальные. и ошибка такая же. Также это версия моего агента vsts-agent-win7-x64-2.112.0.zip - person Barsham; 04.09.2017
comment
Неа. Есть и последняя версия, но проблема не решена. Все еще говорит мне, что Visual Studio версии 15.0 не найдена. Ищете последнюю версию. - person Barsham; 04.09.2017
comment
@Barsham Не могли бы вы вручную запустить сборку на сервере агента сборки с помощью VS. Это сузится, если проблема связана со средой агента сборки или стороной сервера TFS. - person PatrickLu-MSFT; 04.09.2017
comment
Да, даже если я использую компонент MSBuild и указываю местоположение вручную, он работает. Но я не могу изменить все более 300 сборок на моем сервере этим методом. - person Barsham; 04.09.2017
comment
Еще один интересный факт: под возможностями агента я вижу правильный путь для VS 2017! MSBuild_15.0 и MSBuild_15.0_x64 - person Barsham; 04.09.2017
comment
@Barsham Вы выбрали VS2017 в раскрывающемся списке Visual Studio Version задачи Visual Studio Build, как показано на скриншоте выше. А также попробуйте добавить /p:VisualStudioVersion=15.0 в аргумент msbuild, снова запустите сборку. - person PatrickLu-MSFT; 04.09.2017
comment
@ Patrick-MSFT благодарит за вашу помощь. Проблема была решена путем установки TFS 2017 SP2, - person Barsham; 04.09.2017

Я решил эту проблему, обновив свою TFS с TFS 2017 SP1 до TFS 2017 SP2.

Спасибо @ Patrick-MSFT и @Martin Ullrich за вашу помощь.

person Barsham    schedule 04.09.2017