我们有一个本地的TFS 2012服务器和构建服务器。我们正在升级到VS和TFS 2017。目前,有一个请求需要设置另一个构建服务器,以便我们可以从现有的TFS服务器构建新的2017项目。我创建了一个新的构建服务器,并在上面安装了TFS 2012构建服务和VS2017。我创建了一个新的构建定义,但它无法编译,错误显示出2017语法变化在2012中无效等问题。如何告诉配置此设置以针对已安装的VS2017构建该项目?
/tv:15.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=15.0
。
请检查您的构建定义所使用的模板,并通过进入源控制资源管理器并转到团队项目和BuildProcessTemplate进行修改,该文件应该有.xaml扩展名,通过双击来修改它
应该有两个操作显示为Run MSBuild for Project。 您需要将它们的toolpath属性都更改为指向构建服务器上msbuild.exe所在的父文件夹。在我的情况下,构建服务器是32位机器,因此Bin文件夹的路径在Program Files中没有(x86),您需要检查您的构建服务器以输入正确的路径。
完成修改后,您需要保存xaml文件并提交更改。
C:\Program Files (x86)\MSBuild\<version>\bin
中,而运行MSBuild活动使用ToolVersion + ToolArchitecture来计算此路径。DefaultTemplate11.1xaml
与VS2017集成。TFSBuildServiceHost.exe.config
,并且必须在构建服务器上安装VS 2013或VS 2015的版本才能使其正常工作。更详细的步骤请参考此链接中Jonesy2488的答案:如何让TFS 2017 XAML Builds与VS 2017配合工作。