更改NuGet包位置文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了更改NuGet包位置文件夹相关的知识,希望对你有一定的参考价值。

我想更改NuGet包文件夹,但它不会改变它。我所做的是创建文件nuget.config

<configuration>
    <config>
        <add key="repositoryPath" value="C:projects" />
    </config>
</configuration>

我将此文件添加到解决方案文件夹(位于.sln文件的同一文件夹中)或项目文件夹中,然后重新启动VS,但没有任何反应。我正在使用Visual Studio 2017 Community

答案

更改NuGet包位置文件夹

根据您使用的项目类型,此设置可能会也可能不会成功更改NuGet packager文件夹。

如果您使用的是具有packages.config文件的.NET Framework项目,则此设置会将nuget包文件夹更改为C:projects

但是,如果您使用的是project.json文件,则此设置将无法成功。因为project.json项目不支持repositoryPath配置。

要更改nuget packager文件夹,可以设置“NUGET_PACKAGES”环境变量。只需设置“NUGET_PACKAGES”=“c: teampackages”。或者,您可以在解决方案旁边放置一个NuGet.Config文件,其中包含以下内容:

<?xml version="1.0" encoding="utf-8"?>
  <configuration>
    <config>
      <add key="globalPackagesFolder" value=".packages" />
    </config>
</configuration>

有关详细信息,您可以参考以下主题:

Dotnet restore does not honour nuget.config 'repositoryPath'

更新:

我注意到你正在使用Visual Studio Community 2017创建Xamarin.Forms项目,引用应该是PackageReference,对于这种项目,你应该使用以下代码添加到.csproj文件中:

<PropertyGroup>
  <RestorePackagesPath>D:Testpackages</RestorePackagesPath>
</PropertyGroup>

然后重新启动Visual Studio,VS / NuGet将nuget包恢复到D:Testpackages,它在我身边工作正常,你可以查看我的测试样本:

enter image description here

希望这可以帮助。

另一答案

在工具/ Nuget包管理器/包管理器设置Options

以上是关于更改NuGet包位置文件夹的主要内容,如果未能解决你的问题,请参考以下文章

用户空间中的 .nuget 文件夹

Nuget如何指定包位置?

修改Nuget默认包存放位置

如何在本地安装 NuGet 包 .nupkg 文件?

是否可以更改 NuGet 包的位置?

修改VS中的NuGet包下载路径