我有一个 ASP.NET Core 2.1 并添加了一个 Microsoft.WindowsAzure.Storage 的 nuget 包,但是在将代码推送到 repo 后,构建管道在运行构建代理时出现包错误,是否有必要在构建中添加任何其他代理BUILD、RESTORE、TEST 和 PUBLISH 以外的管道。
[错误]错误:进程“C:\hostedtoolcache\windows\dotnet\dotnet.exe”失败,退出代码为 1
信息:Azure Pipelines 托管代理已更新为包含 .Net Core 3.x SDK/Runtime 以及 2.2 和 2.1。除非您为您的项目锁定了 SDK 版本,否则可能会选择 3.x SDK,与以前的版本相比,它可能具有破坏性行为。
这是它在运行管道时显示的错误。
最佳答案
如错误信息所示,不建议调用latest 3.x sdk
恢复、构建、测试、发布以 asp .net core 2.1
为目标的项目.
虽然在大多数情况下构建可以通过,但发布步骤(任务)可能会遇到这个问题:
解决问题:
我们应该指定 .net core
我们要在运行 restore,build,test,publish
等任务之前使用的 sdk 版本...
我们可以添加 use .net core sdk task在其他类似这样的 .net 核心任务之前拿起 .net core 2.1.x
相关版本来执行以下任务,而不是使用 .net core 3.x sdk
:
经典用户界面:
指定 2.1.x+Include Preview Versions
将选择最新版本的 2.1 sdk。
yaml:
如果您使用 yaml 格式而不是经典的 UI 格式来配置管道,它的 yaml 格式类似于:
steps:
- task: UseDotNet@2
displayName: 'Use .Net Core sdk 2.1.x'
inputs:
packageType: sdk
version: 2.1.x
installationPath: $(Agent.ToolsDirectory)/dotnet
includePreviewVersions: true
希望对您有所帮助,如果我有任何误解,请随时纠正我:)
关于azure-devops - 无法在 Azure DevOps Build Pipeline 中使用 .NET SDK 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59474379/