2015-11-16 2 views
6

Я пытаюсь сделать teambuild для решения VS2015 с TFS2013. На buildserver VS2015 установлен, и я изменил buildtemplate так MSBuild имеет аргумент \ TV: 14,0, но когда начать сборку я получаю следующее сообщение об ошибке:VS2015 build с TFS2013

C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets (96): Invalid static method invocation syntax: "[Microsoft.Build.Utilities.ToolLocationHelper]::GetPlatformSDKDisplayName($(TargetPlatformIdentifier), $(TargetPlatformVersion))". Method 'Microsoft.Build.Utilities.ToolLocationHelper.GetPlatformSDKDisplayName' not found. Static method invocation should be of the form: $([FullTypeName]::Method()), e.g. $([System.IO.Path]::Combine(a , b)).

buildserver был перезапущен, но я все еще получаю Ошибка. Я также проверил эту тему: Build failed in TFS, но никакого реального ответа там не было. Есть ли кто-нибудь, кто знает, как это решить.

+0

Вы пробовали это? http://stackoverflow.com/questions/30361105/microsoft-build-utilities-toollocationhelper-error-on-teamcity – Curios

+1

Я установил sdk, но все равно никаких изменений. Но когда я смотрю в GAC, есть сборка Microsoft.Build.Utilities. И в этой сборке нет метода GetPlatformSDKDisplayName в классе ToolLocationHelper. Но в папке C: \ Program Files (x86) \ MSBuild \ 14.0 \ bin есть DLL Microsoft.Build.Utilities.Core и есть имя GetPlatformSDKDisplayName для класса ToolLocationHelper. Может быть, он каким-то образом не может найти dll (имя?) В папке и по умолчанию для gac? –

+0

@SebastianS при настройке шаблона процесса сборки путем изменения действия MSBuild, установите ToolPath как «C: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin». –

ответ

4

я испытывал ту же самую ошибку. Я определил, что TFS2013 - это версия RTM, поэтому мы установили TFS2013 Update 5. Теперь, если я запускаю с использованием шаблона процесса * .12.xaml с параметрами /tv:14.0 /p :VisualStudioVersion=14.0, сборка завершается успешно. Я также сделал копию процесса сборки * .12.xaml и назвал его * .14.xaml и изменил свойство RunScan ToolBersion для MSBuild на «14.0», и эта сборка также работает без параметров.

+1

Лицо, ответственное за TFS, не желает делать обновление. Это для него рискованно (внешняя сторона установлена ​​и настроена TFS). Это действительно может быть ответ, который я ищу. Нужно больше времени, чтобы убедить его. спасибо за ответ –

+1

Мы сделали обновление, и это сработало. Спасибо за информацию –

+0

Мы установили обновление 5 на TFS 2013, но оно все еще терпит неудачу. Произошла ли такая ошибка после обновления? – Stanislav

0

Вам необходимо настроить шаблон процесса сборки, находя всеRun MSBuild для проекта MSBuild деятельности, затем установите ToolVersion в «14,0» и установить Траектории целевых к MSBuild14 (по умолчанию: "C: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin"). После этого проверьте шаблон процесса сборки и переустановите сборку.

Проверить решения здесь: TFS 2013 building .NET 4.6/C# 6.0

+1

Проблема у меня в том, что шаблон, который я использую (TfvcTemplate.12.xaml), не включает в себя активность ** Запуск MsBuild для Project **, он имеет только ** Запуск MSBuild **, и я не могу пройти вдоль траектории инструмента с этой активностью. Я также не могу найти другие шаблоны сборки. –

+0

Затем попробуйте установить аргументы MSBuild в /tv:14.0, а не \ tv: 14.0 –

+0

Я уже так делал. –

Смежные вопросы