Я пытаюсь обновить наш сервер сборки (jenkins) с Visual Studio 2015 до 2017 года. Мы строим через MS-Build. Я загрузил и установил инструменты MS-Buld, как описано в этом ответе . Если я компилирую свои проекты, я получаю ошибку, которая Microsoft.WebApplication.targets
не была найдена.
Подробная ошибка:
error MSB4226: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications\Microsoft.WebApplication.targets"
Я произвел находку в каталоге MS-Build:
PS C:\Program Files (x86)\MSBuild> dir -Recurse -Filter "Microsoft.WebApplication.targets"
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 11.01.2012 00:23 19654 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 06.07.2015 21:55 20118 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
Как видно, файл существует для старых версий компилятора, но для v15.0 он отсутствует.
Я также установил Visual Studio 2017 на сборочный сервер. Проект удастся построить, если я скомпилирую с Visual Studio 2017.
Есть подсказки, как решить эту проблему? Одно из возможных решений - создать символическую ссылку от C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications
точки к старым файлам v14.0 (расположенным ниже C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications
).
Спасибо