Azure管道:迁移到.NET Core 3.1后,Dotnet发布失败,退出代码为1

时间:2020-02-19 15:45:10

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

我有一个Azure管道,可以执行以下操作:

  • 使用.NET Core SDK 3.1.x
  • 网点还原
  • Dotnet构建
  • Dotnet发布

使用.NET Core任务看起来像这样,它在上述所有其他任务之前运行: enter image description here

Dotnet发布

以外,所有作业均成功执行

此作业因以下错误而崩溃: enter image description here

AND

[错误]错误:进程“ C:\ hostedtoolcache \ windows \ dotnet \ dotnet.exe”失败,退出代码为1

[warning]信息:Azure Pipelines托管代理已更新为包含.Net Core 3.x SDK / Runtime以及2.2和2.1。除非您为项目锁定了一个SDK版本,否则可能会选择3.x SDK,与以前的版本相比,该行为可能具有破坏性。

我为Use .NET Core SDK Job尝试了不同的版本,但是所有这些都会导致相同的错误。

发布工作: enter image description here

先谢谢了。欣赏是否有人可以给我一个线索,我可能做错了。

2 个答案:

答案 0 :(得分:1)

发现该问题与Azure管道无关,这是由我的.csproj中引用的程序包引起的:

<DotNetCliToolReference Include="Microsoft.DotNet.Xdt.Tools" Version="2.0.0" />

此程序包具有.NETCoreApp 2.0的依赖项

发现该作者创建了一个新程序包: https://www.nuget.org/packages/DotNet.Xdt# https://github.com/nil4/dotnet-transform-xdt

现在与.NET Core 3.x兼容

答案 1 :(得分:-1)

这是我要安装特定版本的dotnet core的操作:

- task: UseDotNet@2
  inputs:
    packageType: 'sdk'
    version: '3.1.101'

我发现唯一的区别是您必须完全指定SDK版本的SDK版本。 enter image description here