首页 > 解决方案 > .NET Core c# 项目 - 所有 nuget 包都位于哪里?

问题描述

我已经使用 Visual Studio 2017 创建了 ASP.net Core 项目。我需要使用 Visual Studio 2017 在构建机器上编译/调试这个项目。但是我在构建机器上没有互联网。

我的开发机器上有完全相同的项目,可以通过完全互联网访问构建。我在开发机器上可以完全访问互联网。

如何将所有参考 Nuget 包复制到构建机器,以便我可以在构建机器上编译/调试应用程序?

在 .net 框架项目中,我可以复制整个“包”文件夹,它会起作用。在 .NET 核心中没有包文件夹。

我尝试将包从我的开发机器的 C:\Users<user>.nuget 复制到 C:\Users<user>.nuget 的构建机器(没有互联网),但它不起作用。

谢谢,阿图尔

标签: .netasp.net-core.net-corenuget

解决方案


谢谢大家花时间回答。这给了我很多提示。C:\Users\myusername\AppData\Roaming\NuGet\NuGet.Config中的以下设置解决了我的问题。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <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>
  <disabledPackageSources>
    <add key="Microsoft Visual Studio Offline Packages" value="true" />
    <add key="custom" value="true" />
  </disabledPackageSources>
  <packageSources>
    <add key="Package source" value="C:\Users\myusername\.nuget\packages" />
  </packageSources>
</configuration>

最初,它有以下条目导致问题,因为机器无法访问互联网。

<?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="artifactory" value="https://<artifactory URL>/artifactory/api/nuget/v3/nuget-remote" />
  </packageSources>
</configuration>

所有的包都被手动复制到构建机器到 C:\Users\myusername.nuget\packages 文件夹中。

谢谢, 阿图尔


推荐阅读