在 VSO 上构建 ASP.NET 5 beta 7 应用程序是否顺利?

Any luck with building ASP.NET 5 beta 7 application on VSO?

我正在尝试在 VSO 上构建 ASP.NET 5 beta 7 应用程序。我收到以下错误:

System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.DNX.PackageManager' or one of its dependencies. The system cannot find the file specified.

File name: 'Microsoft.DNX.PackageManager'

我知道这个问题: https://github.com/aspnet/Announcements/issues/51

所以我尝试使用 PowerShell 脚本安装最新的 WebTools 但“访问被拒绝”。

知道如何在 VSO 中构建 beta7 应用程序吗?或者只是等待单元 VSO 构建服务器将使用最新工具更新?

您似乎错误地重命名了包管理器。只需找到您引用 'Microsoft.DNX.PackageManager' 的位置并将其更改为 'Microsoft.DNX.Tooling'

为了成功构建 ASP.NET 5 beta 7 项目,需要安装 Microsoft ASP.NET and Web Tools 2015 (Beta7) – Visual Studio 2015

但是,此 Web 工具在托管构建服务器上不可用,这就是您收到 "FileNotFoundException" 错误消息的原因(请查看此 link 了解托管构建服务器上安装的详细信息构建服务器:http://listofsoftwareontfshostedbuildserver.azurewebsites.net/)。此外,不允许您将任何软件安装到托管构建服务器,因此,您会收到 "access denied" 错误消息。

因此,为了成功构建 ASP.NET 5 beta 7 项目,您需要设置为使用您自己的本地构建控制器,而不是使用托管构建服务器。查看此 link 了解详细信息:https://msdn.microsoft.com/library/ee330987

这是 Visual Studio 2015 的工具更改和 VSO 未在其托管构建控制器中安装最新工具的结果(具体来说,Microsoft.Dnx.PackageManager 不存在,实际上应该是 Microsoft.Dnx.Tooling).要解决此问题,除了 托管您自己的构建控制器之外,您还可以回退到命令行工具 dnu builddnu publish:

dnu build "src\{YOUR.PROJECT.FOLDER}" --configuration "release"

dnu publish "src\{YOUR.PROJECT.FOLDER}" --configuration "release" --out "your\output\directory\to\publish\to" --runtime "dnx-clr-win-x86.1.0.0-beta7"

我的博客上有大部分详细信息:Deploying ASP.NET 5 Beta 7 Through Visual Studio Online

这应该只是一个暂时的问题,因为我们只能假设 Microsoft 将更新他们的工具。完成后,您应该能够返回到正常的 Visual Studio 构建步骤。