Строительство TFS 2013.NET 4.6/С# 6.0
Мы используем TFS 2013 как наш сервер сборки. Я начал проект С# 6.0, и я пытаюсь его построить. Я использую новые операторы с нулевым условием, и мои сборки дросселируются. Я попытался установить несколько вещей на сервере TFS, включая пакет таргетинга и VS 2015. Я попытался предоставить /tv:14.0 аргументам MSBuild.
Конфигурация\EntityEntityConfig.cs(270): Недопустимый термин выражения '.'
Конфигурация\EntityEntityConfig.cs(283): Недопустимый термин выражения '.'
Конфигурация\EntityEntityConfig.cs(283): Синтаксическая ошибка, ':' ожидается |... и т.д.
В этот момент я понятия не имею, что еще попробовать. Любые предложения были бы с благодарностью.
Ответы
Ответ 1
Люди, использующие TFS 2012, сообщили об успехе, используя:
/tv:14.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=14.0
в качестве аргументов для MSBuild. Возможно, это может сработать для вас, но пока это не работает для моих агентов сборки TFS 2013.
Update:
Я, наконец, получил это, чтобы работать над TFS 2013. Вот что мне нужно сделать:
- Установите VS 2015 или Microsoft Build Tools 2015 (у меня есть оба).
- Измените мою сборку, чтобы использовать шаблон процесса сборки с именем TfvcTemplate.12.xaml. Я предполагаю, что любой шаблон, более новый, чем этот, будет делать, но DefaultTemplate.11.1.xaml определенно не будет работать!)
- Задайте аргументы MSBuild для /tv:14.0. Мне не пришлось использовать два других, упомянутых выше.
Ответ 2
Кажется, что аргумент команды /tv:14.0 не работает должным образом. Видеть:
BuildActivity игнорирует ToolsVersion
В качестве обходного пути вам необходимо настроить шаблон процесса сборки:
- Откройте шаблон в Visual Studio и найдите действие Запустить MSBuild для проекта MSBuild.
- Установите ToolVersion в "14.0".
- Установите ToolPath для таргетинга на MSBuild14 (по умолчанию: "C:\Program Files (x86)\MSBuild\14.0\Bin" ).
- Проверьте этот шаблон процесса сборки и переустановите сборку.
Ответ 3
Если вы решите установить VS 2015 на машине для сборки, там будет важный шаг: откройте его для первого использования и убедитесь, что он лицензирован. В противном случае вы будете продолжать испытывать сбои сборки.
Ответ 4
Если вы запустите DefaultTempalte.11.1.xaml, то найдите действие msbuild (в этом шаблоне есть 2, а их метка - "Запустить MSBuild для проекта" ) и измените свойство ToolPath на путь набора инструментов msbuild (для меня это "C:\Program Files (x86)\MSBuild\14.0\Bin" ).
Больше ничего не нужно.
Ответ 5
Если вы используете UpgradeTemplate.xml, просто измените "Запустить TfsBuild для папки конфигурации":
1.Set ToolPath для установки на MSBuild14 (по умолчанию: "C:\Program Files (x86)\MSBuild\14.0\Bin" ).
2.Проверьте в этом шаблоне процесса сборки и переустановите сборку.
Спасибо!
Ответ 6
Процесс сборки определяет, какую версию инструментов для сборки вы используете. В определении сборки ванили используется шаблон процесса сборки "DefaultTemplate.11.1.xaml", который настроен на использование Build Tools 2013.
Самый быстрый способ исправить это - просто переключиться на "TfvcTemplate.12.xaml"
![Выбрать шаблон]()
Если вы хотите изменить шаблон по умолчанию, вам нужно будет проверить его из $/[Project]/BuildProcessTemplates/DefaultTemplate.11.1.xaml, а затем отредактировать Аргументы, чтобы установить BuildProcessVersion
![Редактировать версию процесса сборки]()