我们使用TFS 2013作为构建服务器。我已经开始了一个C#6.0项目,我正在努力建立它。我正在使用新的null条件运算符和我的构建chokes。我已经尝试在TFS服务器上安装了几个东西,包括目标包和VS 2015.我尝试将/tv:14.0提供给MSBuild参数。
Configuration \ EntityEntityConfig.cs(270):无效的表达式术语'。' Configuration \ EntityEntityConfig.cs(283):无效的表达式术语'。' Configuration \ EntityEntityConfig.cs(283):语法错误,':'预期
......等等。
此时,我不知道还有什么可以尝试。任何建议都将不胜感激。
答案 0 :(得分:49)
使用TFS 2012的人使用以下方法报告了成功:
/tv:14.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=14.0
作为MSBuild的参数。也许这可能适合您,但到目前为止,这对我的TFS 2013构建代理不起作用。
<强>更新强> 我终于让它在TFS 2013上工作。这是我必须做的事情:
答案 1 :(得分:17)
似乎/tv:14.0命令参数不能按预期工作。看到: BuildActivity ignores ToolsVersion
作为一种变通方法,您需要自定义构建过程模板:
答案 2 :(得分:1)
如果您选择在构建计算机上安装VS 2015,那么重要的一步是:首先打开它,并确保它已获得许可。否则,您将继续遇到构建失败。
答案 3 :(得分:1)
如果运行DefaultTempalte.11.1.xaml,则找到msbuild活动(此模板中有2个,其标签为“为项目运行MSBuild”)并将ToolPath属性更改为msbuild工具集的路径(对我来说)这是“C:\ Program Files(x86)\ MSBuild \ 14.0 \ Bin”)。
没有其他必要。
答案 4 :(得分:0)
如果使用 UpgradeTemplate.xml ,则只需更改&#34;运行配置文件夹的TfsBuild&#34;:
1.将ToolPath设置为MSBuild14的目标(默认情况下:&#34; C:\ Program Files(x86)\ MSBuild \ 14.0 \ Bin&#34;)。
2.检查此构建过程模板并重新排队构建。
谢谢!
答案 5 :(得分:0)