繁体   English   中英

使用TFS 2012构建服务器构建VS2017项目

[英]Build VS2017 project with TFS 2012 build server

我们有一个内部部署的TFS 2012服务器和构建服务器。 我们正在升级到VS和TFS 2017.目前,有人要求设置另一个构建服务器,以便我们从现有的TFS服务器构建新的2017项目。 我创建了一个新的构建服务器并在其上安装了TFS 2012构建服务以及VS2017。 我创建了一个新的构建定义,但它无法编译,错误显示2017年的语法更改在2012年无效。我如何告诉configure这个针对已安装的VS2017构建项目?

感谢这篇文章,我能够使用TFS 2012与使用Visual Studio 2017构建C#6语法的构建服务器持续集成。希望这将为下一个人节省一些时间来试图解决这个问题。

以下是为了让TFS 2012构建c#6语法而更改的列表。 在具有构建代理的计算机上,安装vs 2017 enterprise,在安装设置页面上,确保选择了MS build 在此输入图像描述

编辑Build定义并确保MSBuild Argument为/tv:15.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=15.0

在此输入图像描述

检查构建定义正在使用的模板,并通过转到源代码管理资源管理器并进入团队项目并进行BuildProcessTemplate来修改它,它应该有.xaml文件,通过双击它来修改它 在此输入图像描述

应该有2个操作说运行MSBuild for Project。 您需要将其toolpath属性更改为指向构建服务器上的msbuild.exe父文件夹。 在我的例子中,构建服务器是32位机器,因此Bin文件夹的路径没有Program Files旁边的(x86),您需要检查构建服务器以在此处输入正确的路径。 在此输入图像描述 完成更改后,您需要保存xaml并将其签入。

旧的Visual Studio版本将msbuild安装到C:\\Program Files (x86)\\MSBuild\\<version>\\bin ,显然RunMSBuild活动使用ToolVersion + ToolArchitecture来计算此路径。

VS 2017安装它C:\\ Program Files(x86)\\ Microsoft Visual Studio \\ 2017 \\ Enterprise \\ MSBuild \\ 15.0 \\ bin并且RunMSBuild无法再计算正确的路径。 您不能使用旧的DefaultTemplate11.1xaml与VS2017集成。

要使其工作,您可以尝试修改TFSBuildServiceHost.exe.config并且必须在构建服务器上安装VS 2013或VS 2015的版本才能使其正常工作。 更多细节步骤请在此链接中关注Jonesy2488的答案: 如何让VS 2017使用TFS 2017 XAML Builds


此外,XAML Build在TFS 2017中已弃用,并且不会在TFS下一版本的TFS(2018)中提供。 VSTS已经不再支持它们了。

我正在寻找托管的XAML构建控制器。 它去了哪里?

不再支持托管的XAML构建控制器。 2016年4月或之后创建的帐户无权访问。 我们计划在2017年3月之前从所有帐户中删除托管的XAML构建控制器。

资源

因为您要升级并使用TFS2017。 强烈建议您将构建转换为vNext Build以访问一些新技术和支持。 有关更多信息,请参阅我为什么要保留XAML构建?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM