.NET 问题导致管道出现错误

问题描述 投票:0回答:1

我正在 Azure 中测试管道,以便可以使用 SonarQube 来测试代码,但是当我尝试测试时,我不断收到以下错误消息:

##[错误]nuget 命令失败,退出代码(1) 和错误(C:\Program Files (x86)\dotnet\sdk .0.407\Sdks\Microsoft.NET.Sdk argets\Microsoft.NET.TargetFrameworkInference。目标(141,5):错误NETSDK1045:当前.NET SDK不支持定位.NET 8.0。要么定位.NET 5.0或更低版本,要么使用支持.NET 8.0的.NET SDK版本。代理 gent3_work 8\s\DataTier\DataTier.csproj]) ##[错误]包恢复失败

为了修复此错误,我从服务器中删除了 .NET SDK 5.0.407。

现在我收到以下错误:

##[错误]nuget 命令失败,退出代码(1) 和错误(D:\Agents gent3_work \s\DataTier\DataTier.csproj :错误:无法找到 .NET SDK。请检查它是否已安装并且 global.json 中指定的版本(如果有)与已安装的版本匹配。

关于如何解决这个问题有什么建议吗?

我希望 SonarQube 在代码上运行,以便我可以通知开发人员任何安全问题。

asp.net-core sonarqube
1个回答
0
投票

构建代理似乎不支持 .NET 8.0。构建代理往往落后于 .NET 的更新。您可以通过将 .NET 8.0 安装到管道中来缓解这一问题(知道有一天您将需要删除此代码)。调整此 yaml 以适合您的实际管道。 UseDotNet@2 提供更多详细信息。

stages :  
  - stage: Build
    jobs:
    - job: Build
      steps:
      - task: UseDotNet@2
        displayName: 'Install latest .NET'
        inputs:
          packageType: 'sdk'
          version: 8.x
          performMultiLevelLookup: true
          includePreviewVersions: true

您还应该确保所有项目都以 .NET 8.0 为目标,并且所有 NuGet 依赖项均已更新以避免相关错误。

© www.soinside.com 2019 - 2024. All rights reserved.