繁体   English   中英

使用 Azure Pipelines 将 Nuget 包发布到 Azure 源错误:NU5128

[英]Publish Nuget Package to Azure Feed Using Azure Pipelines Error:NU5128

我有一个 .NET6.0 项目,我正在尝试使用 Azure Pipelines 将其发布到 Azure Feed。 在包装步骤中,我遇到以下错误:

##[error]The nuget command failed with exit code(1) and error(Error NU5128: Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below:
- Add a dependency group for net6.0 to the nuspec)
##[error]An error occurred while trying to pack the files.

我没有使用自定义 .nuspec 文件,它应该由 Azure Pipelines Job 正确生成。

这是我的 .csproj 文件

 <Project Sdk="Microsoft.NET.Sdk">   
      <PropertyGroup>
        <TargetFramework>net6.0</TargetFramework>
        <ImplicitUsings>enable</ImplicitUsings>
        <Nullable>enable</Nullable>
        <PackageId>PackageId</PackageId>
        <Version>1.0.0</Version>
        <Author>Author</Author>
        <Company>Company</Company>
        <Description>Library defining common objects</Description>
      </PropertyGroup>   
    </Project>

这是我的 pipeline.yaml 文件

# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml

name: 1.0.$(Rev:r)

variables:
####################################################BUILD VARIABLES############################################
  buildConfiguration: 'Release'

jobs:
- job: Job_1
  displayName: Agent job 1
  pool:
    vmImage: ubuntu-latest
  steps:
  - checkout: self

  - task: DotNetCoreCLI@2
    displayName: dotnet build
    inputs:
      command: 'build'
      arguments: '--configuration $(buildConfiguration)'
      projects: 'src/.'

  - task: NuGetCommand@2
    displayName: NuGet pack
    inputs:
      command: pack
      packagesToPack: '**/Dummy.csproj'
      versioningScheme: 'off'
      packDestination: $(Build.ArtifactStagingDirectory)

  - task: NuGetCommand@2
    displayName: NuGet push
    inputs:
      command: push
      searchPatternPush: $(Build.ArtifactStagingDirectory)/**/*.nupkg
      publishVstsFeed: 'xxxxx-xxxxxx-xxxxxx'
      
  - task: PublishBuildArtifacts@1
    displayName: publish artifact
    condition: succeededOrFailed()
    inputs:
      PathtoPublish: $(build.artifactstagingdirectory)
      TargetPath: '\\my\share\$(Build.DefinitionName)\$(Build.BuildNumber)'

我无法解决上述问题,但使用自定义 nuspec 文件作为解决方法,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
  <metadata>
    <id>Id</id>
    <version>1.0.0</version>
    <authors>Author</authors>
    <description>Library defining common events</description>
    <dependencies>
      <group targetFramework="net6.0">
        <dependency id="Microsoft.CodeAnalysis.NetAnalyzers" version="6.0.0" exclude="Build,Analyzers" />
       ... // code removed for brevity
      </group>
    </dependencies>
  </metadata>
</package>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM