.Net Core获取文件夹中的所有引用包

时间:2018-11-01 15:07:02

标签: .net-core visual-studio-2017 nuget package

.net核心具有一个全局目录(全局缓存),该目录将所有nuget程序包保留在所有Visual Studio 2017解决方案中。
我们有一个.net核心解决方案,我们想在此目录中获取此解决方案所依赖的所有nuget软件包。

我们该怎么做?

我们附带了所有依赖项的源代码,以便将来可以在任何无需Internet连接的服务器上对其进行编译。 在.net core之前,我们只在解决方案中包含packages文件夹,现在不可能为所有解决方案提供一个全局packages文件夹。

2 个答案:

答案 0 :(得分:0)

  

.Net Core如何将解决方案nuget程序包复制到特定目录

就像Lex所说的那样,您应该创建一个本地供稿来存储这些nuget包,然后将该本地供稿作为包源,并将该包从该本地包源添加到项目中。

要实现此目的,您可以关注我的另一个主题以获取更多详细信息:

Installing NuGet package located in local package repository into a new Visual Studio Solution

  
      
  • 将这些软件包.nupkg添加到本地存储库文件夹中(包括NuGet不再可用的那些版本
      存储库)。
  •   
  • 进入Visual Studio,然后通过“工具”打开“ NuGet设置”对话框   NuGet软件包管理器>软件包管理器设置。点击设置对话框中的软件包来源标签,然后点击加号   左上角的图标以添加新的软件包来源。

  •   
  • 输入本地存储库的名称和来源。名称可以是任何字符串,并且将是NuGet软件包中显示的名称。
      Visual Studio中的管理器。

  •   

此外,您还可以将那些程序包复制到Microsoft Visual Studio脱机程序包文件夹:

C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\

然后将软件包从脱机文件夹添加到项目中。

将这些软件包安装到.net核心项目后,这些软件包将被缓存在全局目录中。

希望这会有所帮助。

答案 1 :(得分:0)

在.net核心中,我们可以通过控制台命令找到所有引用的项目

dotnet list package

有关更多详细信息,请参见https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-list-package。 接下来,我们可以转到nuget全局程序包文件夹,并将所有这些程序包复制到所需的文件夹。