问题描述
我们有一个本地TFS 2012服务器和构建服务器。我们正在升级到VS和TFS2017。目前,有人要求设置另一个构建服务器,使我们可以从现有TFS服务器构建新的2017项目。我创建了一个新的构建服务器,并在其上安装了TFS 2012构建服务以及VS2017。我创建了一个新的构建定义,但无法编译,并且错误显示诸如2017年的语法更改之类的内容在2012年无效。我如何告诉配置此功能以针对已安装的VS2017构建项目?
We have an on-premise TFS 2012 server and build server. We are in the process of upgrading to VS and TFS 2017. At the moment, there is the request to set up another build server that will allow us to build new 2017 projects from the existing TFS server. I create a new build server and installed TFS 2012 build services on it as well as VS2017. I created a new build definition but it fails to compile and errors show things like the syntax changes for 2017 that are invalid in 2012. How do I tell configure this to build the project against the installed VS2017?
推荐答案
旧的Visual Studio版本将msbuild安装到 C:\Program Files(x86)\MSBuild\< version> \ bin
,显然RunMSBuild活动使用ToolVersion + ToolArchitecture计算此路径。
Old Visual Studio versions installed msbuild into C:\Program Files (x86)\MSBuild\<version>\bin
and apparently the RunMSBuild activity used the ToolVersion + the ToolArchitecture to calculate this path.
VS 2017而是将其安装为C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin,RunMSBuild无法再计算正确的路径。您不能使用旧的 DefaultTemplate11.1xaml
与VS2017集成。
VS 2017 instead installs it C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin and the RunMSBuild can't calculate the proper path anymore. You can not use the old DefaultTemplate11.1xaml
to integrate with VS2017.
要执行此操作,您可以尝试修改 TFSBuildServiceHost.exe.config
,并且必须具有版本为了使其正常运行,在构建服务器上安装了VS 2013或VS 2015。更详细的步骤,请按照此链接中 Jonesy2488的的回答:
To make this work, you could try to modify the TFSBuildServiceHost.exe.config
and you must have a version of VS 2013 or VS 2015 installed on the build server in order for this to work. More detail step please follow Jonesy2488's answer in this link:How to get VS 2017 working with TFS 2017 XAML Builds
此外,XAML Build在TFS 2017中已弃用,在TFS(2018)的下一版本中将不可用。 VSTS已经不再支持它们。
Moreover, XAML Build are deprecated in TFS 2017 and will not be available in tge next version of TFS(2018). VSTS already no longer supports them.
不再支持托管的XAML构建控制器。在2016年4月或之后创建的帐户
无权使用。我们计划
从所有帐户中删除托管的XAML构建控制器,可能最早在2017年3月删除
。
The hosted XAML build controller is no longer supported. Accounts created on or after April 2016 do not have access to it. We plan to remove the hosted XAML build controller from all accounts, possibly as soon as March 2017.
由于您要升级并使用TFS2017。强烈建议您将内部版本转换为vNext内部版本,以使用一些新技术和支持。有关更多信息,请参考
Since you are going to upgrade and use TFS2017. Highly recommend you to convert your builds to vNext Build to access some new technology and support. For more please refer Why Should I Leave XAML Builds?
这篇关于使用TFS 2012构建服务器构建VS2017项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!