VS2017解决方案文件和nuget包位置

时间:2017-03-27 16:09:34

标签: visual-studio nuget visual-studio-2017

我有两个独立的API项目。每个都有一个解决方案文件,都遵循这个目录布局(ApiOne / ApiTwo);

/src
  /ApiOne
    /ApiOne.sln
    /packages  
    /ApiOne
        ApiOne.csproj

我现在想创建一个新的解决方案文件,并将ApiOne.csproj和ApiTwo.csproj添加到该解决方案文件中,该文件可以存储在磁盘上的任何位置。我遇到的问题是,在Visual Studio中构建解决方案时,将在解决方案文件旁边创建包文件夹,因此项目将不会构建,因为引用被定义为..\packages\{ref}

有没有办法指示nuget继续为每个项目创建一个包文件夹,如果我在那里构建Api特定的sln文件,那么该文件夹会在哪个位置创建?

2 个答案:

答案 0 :(得分:1)

  

有没有办法指示nuget继续为每个项目创建一个包文件夹,如果我在那里构建Api特定的sln文件,那么该文件夹会在哪个位置创建?

答案是否定的。正如Matt Ward在评论中解释的那样,存储库Path在全局路径(%appdata%\ NuGet)或解决方案文件夹中的NuGet.config文件中配置。它可以是相对路径或绝对路径。但我们无法为每个项目使用此相对路径或绝对路径

我建议在NuGet Issue Tracker发帖以进行讨论。处理它的人看起来非常活跃,因此可能会在未来的版本中添加支持。

希望这可以帮到你。

答案 1 :(得分:0)

从各个sln文件的本地包文件夹创建符号链接(mklink / d {link} {target}),聚合sln文件的包文件使构建在VS中成功完成,从而满足我的用例。