Dependencies not getting added when Nuget package deployed through Azure Devops(通过Azure DevOps部署Nuget包时未添加依赖项)
问题描述
我已经创建了.NET标准库。创建后,我尝试通过选择项目文件中存在的Pack选项从我的Visual Studio创建Nuget包。 然后尝试在另一个控制台应用程序中使用本地创建的.nupkg文件,运行正常。其显示的依赖关系与预期一致
然后,我通过创建管道,通过Azure Devop部署了相同的Libray。现在,在同一个控制台应用程序中,如果我从我的Azure DEVOPS源代码中选择Nuget,它不会显示任何依赖关系。 控制台应用在安装后无法工作,它要求在控制台应用中再次安装依赖项。
这是我的项目文件。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<Company>MyCompany</Company>
<Authors>Me</Authors>
<Version>1.0.0</Version>
<Description>Library for managing Azure KeyVault</Description>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Azure.KeyVault" Version="3.0.5" />
<PackageReference Include="Microsoft.IdentityModel.Clients.ActiveDirectory" Version="5.2.7" />
</ItemGroup>
</Project>
我尝试按照建议here在项目文件中添加以下内容,但没有帮助。
<PackageReference Include="NuGet.Build.Tasks.Pack" Version="5.4.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
注意:我的项目中没有.nuspec
文件
我在这里错过了什么。
推荐答案
可以更清楚(事实上,I just created a PR这样做),但隐藏在the docs on the Azure DevOps NuGet Task的Yaml代码段的注释末尾,它说:
使用NuGet.exe并与.NET框架应用程序配合使用。对于.NET Core和.NET Standard应用程序,请使用.NET Core任务。
查看nuget'exe pack
docs,它显示:
因此,对基于PackageReference的项目使用DotNet Pack或msBuild-t:Pack。
nuget.exe pack
基本上不支持PackageReference,而所有.NET核心项目都是PackageReference。因此,您不应该使用Azure DevOps中的NuGet任务来打包PackageReference项目,或者使用.NET Core任务(它使用DotNet cli),或者使用带有-t:pack
参数的MSBuild。
这篇关于通过Azure DevOps部署Nuget包时未添加依赖项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:通过Azure DevOps部署Nuget包时未添加依赖项
基础教程推荐
- 为什么Flurl.Http DownloadFileAsync/Http客户端GetAsync需要 2022-09-30
- 将 Office 安装到 Windows 容器 (servercore:ltsc2019) 失败,错误代码为 17002 2022-01-01
- SSE 浮点算术是否可重现? 2022-01-01
- 将 XML 转换为通用列表 2022-01-01
- 有没有办法忽略 2GB 文件上传的 maxRequestLength 限制? 2022-01-01
- MS Visual Studio .NET 的替代品 2022-01-01
- 如何在 IDE 中获取 Xamarin Studio C# 输出? 2022-01-01
- c# Math.Sqrt 实现 2022-01-01
- rabbitmq 的 REST API 2022-01-01
- 如何激活MC67中的红灯 2022-01-01