I have a .NET6.0 Project which I am trying to publish to Azure Feed using Azure Pipelines. In the packing step I am having the following Error:
##[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.
I am not using a custom .nuspec file, it should be properly generated by Azure Pipelines Job.
Here is my .csproj file
<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>
This is my pipeline.yaml file
# 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)'
CodePudding user response:
I could not resolve the issue described above but had use a custom nuspec file as a workaround as follows:
<?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>