首页 > 其他分享 >NuGet配置文件nuget.config的应用示例

NuGet配置文件nuget.config的应用示例

时间:2024-09-02 16:07:11浏览次数:3  
标签:NuGet 配置文件 示例 Backup Config nuget Packages config

参考:

https://learn.microsoft.com/zh-cn/nuget/consume-packages/configuring-nuget-behavior

创建新配置文件

使用 .NET CLI 运行   dotnet new nugetconfig   ,创建默认 nuget.config。 有关详细信息,请参阅 dotnet CLI 命令

也可以将下方的模板手动复制到新文件中,然后使用  nuget config -configFile <filename>  设置值:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
</configuration>

设置演练

假设两个独立的驱动器上具有以下文件夹结构:

D:\Packages
    NuGet
    NuGet_Backup

首先,列出计算机级的 NuGet.Config 文件的路径和内容:

Windows:%ProgramFiles(x86)%\NuGet\Config
Mac/Linux:默认为 /etc/opt/NuGet/Config (Linux) 或 /Library/Application Support (Mac)。 如果 $NUGET_COMMON_APPLICATION_DATA 既不是 null 也不是空,则为 $NUGET_COMMON_APPLICATION_DATA/NuGet/Config。

实际内容
C:\Program Files (x86)\NuGet\Config\Microsoft.VisualStudio.Offline.config

文件内容
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\"/>
  </packageSources>
</configuration>

在列出用户级:

Windows:%appdata%\NuGet\NuGet.Config
Mac/Linux: ~/.config/NuGet/NuGet.Config 或 ~/.nuget/NuGet/NuGet.Config(因工具而异)
所有平台都支持其他配置。 这些配置无法通过工具进行编辑。
Windows:%appdata%\NuGet\config\*.Config
Mac/Linux:~/.config/NuGet/config/*.config 或 ~/.nuget/config/*.config

实际内容
C:\Users\Administrator\AppData\Roaming\NuGet\NuGet.Config

文件内容
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
    <add key="192.168.226.253:8080" value="http://10.32.226.253:8080/v3/index.json" />
  </packageSources>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <bindingRedirects>
    <add key="skip" value="False" />
  </bindingRedirects>
  <packageManagement>
    <add key="format" value="0" />
    <add key="disabled" value="False" />
  </packageManagement>
  <config>
    <add key="globalPackagesFolder" value="D:\Packages\NuGet\packages" />
  </config>
</configuration>

最后,列出当前值:

当前文件夹(又称解决方案文件夹)或上至驱动器根目录的任何文件夹。

实际内容
D:\Packages
D:\Packages\NuGet
D:\Packages\NuGet\nuget.config
D:\Packages\NuGet\config
D:\Packages\NuGet\packages
D:\Packages\NuGet_Backup
D:\Packages\NuGet_Backup\nuget.config

下面,检查实际nuget.config文件的配置影响。上面2个目录下面,有2个nuget.config文件,我们可以通过下面的命令来列出注册的源:

PS D:\Packages\NuGet_Backup> dotnet nuget list source
注册的源:
  1.  nuget.org [已启用]
      https://api.nuget.org/v3/index.json
  2.  Microsoft Visual Studio Offline Packages [已启用]
      C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
  3.  192.168.226.253:8080 [已启用]
      http://192.168.226.253:8080/v3/index.json
warn : 正在通过 “HTTP” 源“192.168.226.253:8080 [http://192.168.226.253:8080/v3/index.json]”运行“list source”操作。将来的版本中将删除非 HTTPS 访问权限。请考虑迁移到 “HTTPS” 源。
PS D:\Packages\NuGet_Backup>

 此时,具有3个注册的源,实际的 D:\Packages\NuGet_Backup\nuget.config 文件的内容为:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
    <add key="10.32.226.253:8080" value="http://10.32.226.253:8080/v3/index.json" />
  </packageSources>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <bindingRedirects>
    <add key="skip" value="False" />
  </bindingRedirects>
  <packageManagement>
    <add key="format" value="0" />
    <add key="disabled" value="False" />
  </packageManagement>
</configuration>

我们重新检查一下另一个,列出的注册源如下:

PS D:\Packages\NuGet> dotnet nuget list source
注册的源:
  1.  nuget [已启用]
      https://api.nuget.org/v3/index.json
PS D:\Packages\NuGet>

 此时,具有1个注册的源,实际的 D:\Packages\NuGet\nuget.config 文件的内容为:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!--To inherit the global NuGet package sources remove the <clear/> line below -->
    <clear />
    <add key="nuget" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>

此时,该配置清除了 <packageSources>,因此 nuget.org 将不再可用作源,并仅留下 nuget 的源名。

标签:NuGet,配置文件,示例,Backup,Config,nuget,Packages,config
From: https://www.cnblogs.com/huioo/p/18392853

相关文章

  • nginx的基本使用示例(负载均衡,虚拟主机,动静分离)的详细配置过程
    文章目录前言前置工作httpd主机tomcat主机nginx主机配置负载均衡配置过程效果展示虚拟主机配置过程效果展示动静分离配置过程排除思路前言本篇博客展示nginx的基本使用案例,后端由httpd+tomcat组成,linux版本:rocky9.2虚拟机ipnginx192.168.10.11httpd192.168......
  • ROS 入门-如何在Ubuntu系统中安装不同版本的ROS并编写基本示例
    引言在当今快速发展的科技时代,机器人技术正以前所未有的速度改变着我们的生活。从工业生产线上的自动化装配,到家庭中的智能助手,再到医疗领域的精密手术,机器人无处不在。然而,随着机器人应用范围的不断扩展,如何高效地开发和部署复杂的机器人系统成为了亟待解决的问题。正是在......
  • 正点原子Linux Framebuffer编程:解决示例程序在开发板上LCD显示错位和颜色异常
    正点原子LinuxFramebuffer编程:解决示例程序在开发板上运行7寸LCD显示错位和颜色异常作者在学习【正点原子】I.MX6U嵌入式LinuxC应用编程指南V1.4时,发现其配套的程序在开发板上运行不正常。使用的硬件版本:正点原子I.MX6UALPHAV2.4版本底板,LCD:正点原子7寸1024*600,型号ATK-MD0......
  • NGraphX v1.8.2发布,Bug修复及增加AiEditor接入示例并托管示例源码到Github
    本次更新包括了对启动脚本、认证流程、请求Url处理的优化,以及工作流API的改进。此外,我们还新增了AiEditor接入示例,让用户体验更直观、互动性更强。示例更新内容:启动脚本主机参数默认值修改:修改启动脚本中主机参数的默认值为127.0.0.1,以增强本地访问的安全性。如需开启......
  • 基于live555开发的多线程RTSPServer轻量级流媒体服务器EasyRTSPServer开源代码及其调
    EasyRTSPServer参考live555testProg中的testOnDemandRTSPServer示例程序,将一个live555testOnDemandRTSPServer封装在一个类中,例如,我们称为ClassEasyRTSPServer,在EasyRTSPServer_Create接口调用时,我们新建一个EasyRTSPServer对象,再通过调用EasyRTSPServer_Startup接口,将EasyRTSP......
  • 豆包 API 调用示例代码详解-Python版
    文章目录豆包API调用示例代码详解-Python版一、事前准备二、所需Python包三、代码详解五、源码下载四、总结豆包官方API文档豆包API调用示例代码详解-Python版在本文中,我们将详细介绍如何使用Python调用豆包API,并提供相关的事前准备和代码执行步骤。一、......
  • WebGL入门(020):WebGLTransformFeedback 简介、使用方法、示例代码
    还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。No.内容链接1Openlayers【入门教程】-......
  • Tita的OKR:您绝对不能错过的 OKR 示例!
    作为孩子,我们经常被告知要“集中精力”学习才能取得成功。当我们进入企业界时,这种集中或专注的原则经常被忘记。研究表明,拥有具体的目标可以带来更高的绩效和成功的目标实现。令人惊讶的是,伦敦商学院进行的一项研究显示,在接受调查的11,000名高级管理人员中,只有三分之一能够列出......
  • 使用 setenv 配置文件管理 Tomcat 的自定义环境变量
    1、背景描述有时候,我们会在catalina.bat或catalina.sh文件中,自定义一些环境变量,例如额外指定JDK路径或设置JVM参数。实际上,直接在catalina.bat或catalina.sh文件中,自定义环境变量的做法,是不规范的。因为在对Tomcat进行(小版本)升级时,新版本的catalina.bat或cata......
  • 【C#】一个喜欢用Python的菜狗在尝试Linq之后总结的常见用法以及示例
    1.筛选(Where)筛选集合中的元素。类似python中列表推导式中的if示例int[]numbers={1,2,3,4,5,6};varevenNumbers=numbers.Where(n=>n%2==0);foreach(varnuminevenNumbers){Console.WriteLine(num);}//输出:2,4,6python中的实现[if......