我有几个 ASP.NET vNext 应用程序,我希望我的 CI 服务器也能够构建它们。我的本地机器和 CI 服务器都在运行 VS2015 RC。然后我们有了 VS Online 和一个本地构建控制器——也就是提到的服务器。
但是,我无法进行构建,因为它似乎正在寻找 v12 工具——其中不包含任何 DNX。
所以 - 构建解决方案给出:
需要安装 Dnx 运行时包。有关更多详细信息,请参见输出窗口
它已安装 - 因为它带有 VS2015 RC,AFAIK。所以我认为构建模板没有使用 v14 工具。我下载了默认 Git 模板 v12。确实它说:
<this:Process.BuildProcessVersion>12.0</this:Process.BuildProcessVersion>
所以我把它切换到 14,上传模板,运行构建。然后:
异常消息:用于此构建的构建控制器不支持构建定义使用的模板文件的版本。模板文件的版本是 14.0. 此构建控制器支持的最高版本为 12.0.0.0。
所以试图解决这个问题 - 让我来到这个论坛问题,该问题指出:
然后,您需要更改所涉及的 MSBuild 版本,而不是更改 BuildProcessVersion 属性。打开构建过程模板,找到 Run MSBuild for Project 活动,将ToolPath属性更改为 2013 版 msbuild
所以 - 我检查了模板 - 没有 ToolPath 版本。但是有一个 ToolVersion 属性 - 我将尝试将其设置为 14:
简而言之,我的问题是:如何在安装了 VS2015RC 的构建服务器上构建 ASP.NET vNext 应用程序 - 但使用 v12 工具构建?
更新
似乎问题不在于使用错误的工具,而在于在服务帐户下运行时查找/使用正确的 DNX 运行时(TFS 代理正在这样做)。我为 DNX 团队添加了一个问题:https ://github.com/aspnet/dnx/issues/2239 。