共享包文件夹nuget,nuget.config被忽略

时间:2013-04-26 21:24:29

标签: visual-studio nuget

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

  • repostiory /
  • 库/ PROJECT1 /解决方法1
  • 库/项目2 /溶液2

我希望nuget将所有软件包下载到:

  • 库/包

我已将nuget.config添加到存储库根目录,其内容如下:

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

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

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

2 个答案:

答案 0 :(得分:0)

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

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

> repostiory\
> repostiory\NuGet.Config
> repository\solution1\project1
> repository\solution2\project2

(我改变了解决方案和项目,因为这是组织Visual Studio解决方案的方式。)

可能是配置文件中指定的repositoryPath relative 到运行NuGet命令的位置(通过Visual Studio)?我假设它将在解决方案文件夹中?如果是这种情况,那么你看到的是正确的(因为packages文件夹将在每个解决方案中,就像通常那样)。

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

答案 1 :(得分:0)

正如Nailuj暗示的那样,这实际上是一个错误。 NuGet目前不支持该值的相对路径。这是一个无赖。

https://nuget.codeplex.com/workitem/2753

所以,如果你感到勇敢,你可以卷起袖子并修好它:)