.Net 5 Azure Pipeline - 找不到指定的 SDK 'Microsoft.NET.Sdk.BlazorWebAssembly'

.Net 5 Azure Pipeline - The SDK 'Microsoft.NET.Sdk.BlazorWebAssembly' specified could not be found

我将我们的项目升级到 .NET 5 并在构建时收到此错误 azure 管道错误:

The nuget command failed with exit code(1) and error(C:\agent\_work\s\src\Main.Blazor\Main.Blazor.csproj : error : C:\Program Files\dotnet\sdk.1.401\Sdks\Microsoft.NET.Sdk.BlazorWebAssembly\Sdk not found. Check that a recent enough .NET Core SDK is installed and/or increase the version specified in global.json.

找不到指定的 SDK Microsoft.NET.Sdk.BlazorWebAssembly

这是它失败的任务,并且这台机器上已经安装了 .NET 5,我可能遗漏了什么?

- task: NuGetCommand@2
   displayName: 'NuGet Restore'
  inputs:
    command: 'restore'
    restoreSolution: '$(solution)'
    feedsToUse: 'select'
    vstsFeed: '842a57e5-e138-4563-9d88-36c4b1476f72'

正如您在错误消息中看到的,似乎正在使用 .NET Core 3.1.401 sdk。

尝试在 运行 任何 dotnet/nuget 命令之前添加以下步骤:

- task: UseDotNet@2
      displayName: 'Use .NET 5.0.x'
      inputs:
        packageType: sdk
        version: '5.0.x'

原来有 2 个构建服务器,其中一个没有更新。任务:

- task: UseDotNet@2
      displayName: 'Use .NET 5.0.x'
      inputs:
        packageType: sdk
        version: '5.0.x'

不需要,一旦更新了另一个构建服务器,唯一剩下的就是更新此任务以使用 5.x 并将 CheckLatest 设置为 true

- task: NuGetToolInstaller@1
    inputs:
    versionSpec: 5.x
    checkLatest: true