修改Nuget下载的package缓存文件夹

修改Nuget下载的package缓存文件夹

.NET Core项目中nuget的package不再添加到解决方案目录下,而是统一存放在缓存文件夹下,导致nuget缓存文件夹非常大,默认的nuget缓存文件夹是在C盘,所以需要移动它。

可以使用下面的代码查看 nuget 全局缓存文件所在的文件夹

    nuget locals all -list

可以看到下面的输出

    http-cache: C:\Users\user\AppData\Local\NuGet\v3-cache   #NuGet 3.x+ cache
    packages-cache: C:\Users\user\AppData\Local\NuGet\Cache  #NuGet 2.x cache
    global-packages: C:\Users\user\.nuget\packages\          #Global packages folder
    temp: C:\Users\user\AppData\Local\Temp\NuGetScratch      #Temp folder

这样可以看到,所在的全局缓存文件夹是放在 C 盘,那么我提供两个方法可以修改:

修改链接

可以使用管理员权限运行 PowerShell 来进行文件夹链接,首先复制 nuget 的 package 文件夹到 另外的地方,我移动到D:\nuget\packages,所以就可以使用下面代码把 nuget 文件夹移动到另一个文件夹

    mklink /d C:\Users\user\.nuget\packages D:\nuget\packages

在使用这个代码之前,需要删除 C:\Users\user.nuget\packages 请把这个字符串修改为自己的 nuget 文件夹

配置

除了上面的方法,还可以通过修改配置,修改全局文件夹

打开 %AppData%\NuGet\NuGet.Config ,在这个文件夹添加下面代码:

<configuration>
  <config>
     <add key="globalPackagesFolder" value="D:\nuget\packages" />
  </config>
</configuration>

NuGet Cache

Mac

  • ~/.local/share/NuGet/Cache
  • ~/.nuget/packages

    Windows

  • %LocalAppData%\NuGet\Cache
  • %UserProfile%.nuget\packages

    Linux

  • ~/.local/share/NuGet/Cache
  • ~/.nuget/packages

NuGet Configuration

Mac

~/.config/NuGet/NuGet.Config

Windows

%AppData%\NuGet\NuGet.Config

Linux

~/.config/NuGet/NuGet.Config

posted @   evemen  阅读(661)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示