.NET Core c# 项目 - 所有 nuget 包位于何处?
.NET Core c# Project - where does all nuget packages are located?
我使用 Visual studio 2017 创建了 ASP.net 核心项目。
我需要使用 Visual studio 2017 在 Build 机器上 compile/debug 这个项目。但是我在 Build 机器上没有互联网。
我的开发机器上有完全相同的项目,我可以在完全访问互联网的情况下构建它。我在开发机器上可以完全访问互联网。
如何将所有参考 Nuget 包复制到 Build 机器,以便我可以 compile/debug 在 Build 机器上应用程序?
在 .net Framework 项目中,我可以复制整个 'packages' 文件夹并且它会起作用。而在 .NET 核心中没有包文件夹。
我尝试将包从我的开发机器的 C:\Users.nuget 复制到构建机器(没有互联网)的 C:\Users.nuget,但没有用。
谢谢,
阿图
在解决方案所在的根目录中添加 Nuget.config 文件。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="PackageSource" value="c:\packages" />
</packageSources>
</configuration>
并且您可以使用此命令来构建您的项目
dotnet restore $PROJECT_NAME --configfile ./NuGet.config
dotnet build $PROJECT_NAME --no-restore
感谢大家花时间回答。这给了我很多提示。
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 文件夹中。
谢谢,
阿图尔
我使用 Visual studio 2017 创建了 ASP.net 核心项目。 我需要使用 Visual studio 2017 在 Build 机器上 compile/debug 这个项目。但是我在 Build 机器上没有互联网。
我的开发机器上有完全相同的项目,我可以在完全访问互联网的情况下构建它。我在开发机器上可以完全访问互联网。
如何将所有参考 Nuget 包复制到 Build 机器,以便我可以 compile/debug 在 Build 机器上应用程序?
在 .net Framework 项目中,我可以复制整个 'packages' 文件夹并且它会起作用。而在 .NET 核心中没有包文件夹。
我尝试将包从我的开发机器的 C:\Users
谢谢, 阿图
在解决方案所在的根目录中添加 Nuget.config 文件。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="PackageSource" value="c:\packages" />
</packageSources>
</configuration>
并且您可以使用此命令来构建您的项目
dotnet restore $PROJECT_NAME --configfile ./NuGet.config
dotnet build $PROJECT_NAME --no-restore
感谢大家花时间回答。这给了我很多提示。 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 文件夹中。
谢谢, 阿图尔