需要安装Dnx Runtime包 - 托管的Build Controller

时间:2016-04-16 11:35:41

标签: asp.net-core-mvc azure-devops dnx azure-pipelines

我正在开发我的第一个ASP.NET 5应用程序,我在Visual Studio Team Services(Visual Studio Online)上进行托管构建时遇到了一些问题。我收到错误:

C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ DNX \ Microsoft.DNX.targets(126,5):错误:需要安装Dnx Runtime软件包。< / em>的

在看到以下构建消息之前的一行: 在文件夹中找不到DNX运行时dnx-clr-win-x86.1.0.0- beta8 :C:\ Users \ buildguest.dnx \ runtimes

我找到了Prebuild-Powershell脚本(https://msdn.microsoft.com/Library/vs/alm/Build/azure/deploy-aspnet5

的解决方案

注意:我将ASP.Net 5 MVC项目添加到现有解决方案中。我没有global.json文件和src文件夹!这就是我调整脚本的原因如下:

& iex((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.ps1'))
$dnxVersion = "latest"
& $env:USERPROFILE\.dnx\bin\dnvm install $dnxVersion -Persistent
Get-ChildItem -Path $PSScriptRoot\..\InternalWeb.Client -Filter project.json -Recurse | ForEach-Object { & dnu restore $_.FullName 2>1 }

脚本在构建步骤&#34之后运行;获取源&#34;并有以下输出:

enter image description here

但是,我仍然得到相同的错误消息!怎么了? 感谢帮助! 迈克尔

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,我发现了一个适合我的解决方案。 PowerShell脚本将安装最新的运行时或您在global.json文件中指定的运行时。由于没有global.json文件和默认设置它不起作用,我在项目文件夹中添加了global.json文件并指定了我正在使用的版本:

{
    "sdk": {
        "version": "1.0.0-rc1-update1",
        "runtime": "coreclr",
        "architecture": "x86"
    }
}

第一次尝试再次失败,出现以下错误:

  

预期的锁定文件不存在。请运行&#34; dnu restore&#34;生成一个新的锁文件。

所以我在PowerShell脚本的末尾添加了dnu restore。 下一个构建成功了。也许这对你有用。