Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 已忽略共享包文件夹nuget,nuget.config_Visual Studio_Nuget - Fatal编程技术网

Visual studio 已忽略共享包文件夹nuget,nuget.config

Visual studio 已忽略共享包文件夹nuget,nuget.config,visual-studio,nuget,Visual Studio,Nuget,我的所有解决方案都有一个共享存储库。我的结构如下: <configuration> <config> <add key="repositoryPath" value="packages" /> </config> </configuration> 报告的/ 存储库/项目1/解决方案1 存储库/项目2/解决方案2 我希望nuget将所有软件包下载到: 存储库/包 我已将一个nuget.config添加到存储库根目

我的所有解决方案都有一个共享存储库。我的结构如下:

<configuration>
  <config>
    <add key="repositoryPath" value="packages" />
  </config>
</configuration>
  • 报告的/
  • 存储库/项目1/解决方案1
  • 存储库/项目2/解决方案2
我希望nuget将所有软件包下载到:

  • 存储库/包
我已将一个nuget.config添加到存储库根目录中,内容如下:

<configuration>
  <config>
    <add key="repositoryPath" value="packages" />
  </config>
</configuration>

根据我所读到的,为了有一个共享包文件夹,这应该足够了吗?相反,nuget似乎完全忽略了nuget.config文件,而是将packages文件夹放在每个解决方案目录中


有人知道如何解决这个问题吗?

这只是一个猜测,但您可以尝试以下方法:

您说您有这样的解决方案结构:

> repostiory\
> repostiory\NuGet.Config
> repository\solution1\project1
> repository\solution2\project2
(我切换了解决方案和项目,因为这是VisualStudio解决方案的组织方式。)

是否在配置文件中指定的
repositoryPath
与运行NuGet命令的位置有关(由Visual Studio执行)?我想它会在解决方案文件夹中?如果是这种情况,那么您看到的是正确的(因为packages文件夹将像通常一样位于每个解决方案中)


如果改为在配置文件中指定相对路径(例如,
。\NuGet.Config
)或绝对路径,该怎么办?

正如Nailuj所暗示的,这实际上是实现中的一个bug。NuGet当前不支持该值的相对路径。这是一个令人沮丧的问题


所以,如果你觉得自己很勇敢,你可以卷起袖子来修好它:)

看起来这已经修好了。看到和