.net核心具有一个全局目录(全局缓存),该目录将所有nuget程序包保留在所有Visual Studio 2017解决方案中。
我们有一个.net核心解决方案,我们想在此目录中获取此解决方案所依赖的所有nuget软件包。
我们附带了所有依赖项的源代码,以便将来可以在任何无需Internet连接的服务器上对其进行编译。 在.net core之前,我们只在解决方案中包含packages文件夹,现在不可能为所有解决方案提供一个全局packages文件夹。
答案 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全局程序包文件夹,并将所有这些程序包复制到所需的文件夹。