我正在使用TeamCity 9.1.3。我们正在使用MSBuild Tools 15来构建我们的应用程序。我们的应用程序针对4.5.2,一切都很顺利。现在我们已将应用程序内的框架更改为4.6.2。开发人员可以使用Visual Studio中的Framework 4.6.2在本地构建其应用程序。
但是在我们的TeamCity服务器上,构建失败了。似乎TeamCity仍在使用旧框架。我们确实安装了4.6.2框架。我们有MS BuildTools 15.我们的MSBuild Toolsversion是14和runplatform x64。对于仍在使用4.5.2框架的应用程序,这是相同的。
我们需要更改什么,以便我们的TeamCity Job for this app将使用4.6.2(使用与我们仍在使用4.5.2的其他应用程序相同的buildTools 15)。
我们在作业配置中的MSBuild版本按钮内没有看到4.6.2。我们看到BuildTools 15,BuildTools 13和.NET Framework 4.5,4.0,3.5,......
我也没有看到Windows中的4.6.2框架和我们服务器的功能(但是它安装在主机上)。我们正在开发Windows Server 2012 R2。
这对我有用,所以这就是你需要做的。
安装MSBuildTools15。
使用NuGet进行以下操作:
nuget install Microsoft.Net.Compilers
nuget install Microsoft.CodeAnalysis
将项目语言设置为c#6(属性|构建|高级设置|语言版本C#6.0
从一个好的版本(安装了Visual Studio的开发机器)复制VS 14.0设置并放在目标构建服务器C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 *。*
作为TeamCity Build的第一步添加
注意:你不会在MSBuild版本中看到4.6.2,但它的编译方式是相同的。