对于我的大多数项目,我都有以下约定:
/src
/Solution.sln
/SolutionFolder
/Project1
/Project2
/etc..
/lib
/Moq
moq.dll
license.txt
/Yui-Compressor
yui.compressor.dll
/tools
/ILMerge
ilmerge.exe
Run Code Online (Sandbox Code Playgroud)
你会注意到,我没有保持外部库中的源文件夹.我也对使用NuGet非常感兴趣,但不希望在源文件夹中使用这些外部库.NuGet是否有设置来更改所有包加载到的目录?
我们在packages文件夹中使用自定义位置,我们在与我们的解决方案相同的文件夹中的nuget.config文件中指定:
<settings>
<repositoryPath>..\..\lib\packages</repositoryPath>
</settings>
Run Code Online (Sandbox Code Playgroud)
Visual Studio 2013很好地解决了这个问题,NuGet包管理器将软件包安装到指定的文件夹中,正确列出已安装的软件包等.
在Visual Studio 2015 RC中,NuGet包管理器弹出"此解决方案中缺少某些包,单击此处恢复"消息,如果单击该按钮,则会在与解决方案相同的文件夹中创建新的包文件夹,而不是使用nuget.config中指定的位置.安装一个全新的软件包也会将其放入解决方案文件夹下的packages文件夹中,而不是指定的文件夹.
如何让Visual Studio 2015 RC尊重nuget.config中指定的存储库路径?
我正在研究.net解决方案并使用nuget进行包管理.我已选择"启用Nuget包还原"选项,以便nuget包未签入源代码管理.
在此之前,我有一个nuget.config文件与我所包含的解决方案处于同一级别,以便让我指定nuget包的位置.
<settings>
<repositoryPath>..\Build\NuGetPackages\</repositoryPath>
</settings>
Run Code Online (Sandbox Code Playgroud)
由于我启用了nuget包还原,因此不再有效.我试图在.nuget生成的文件夹中更新配置文件,但这也不起作用.
所以我出错了,如何指定packages文件夹的位置?