“管理”Nuget包安装文件夹

时间:2013-01-22 15:42:00

标签: nuget

我创建了一个nuget包,然后安装它,却发现它创建了一个我没想到的目录结构。我想知道我做错了什么或我能做些什么来达到预期的结果。 The documentation说:

  

安装软件包时,content文件夹中的文件将复制到应用程序的根目录

但事实并非如此!

为了澄清这个问题,我在以下文件夹结构上调用了nuget pack -BasePath staging

  • 分期/
    • 内容/
      • 为myplugin /
        • foo.txt的

从那里,当我执行nuget install MyPackage -o .\Target时,我预计会有以下结果:

  • 目标/
    • 为myplugin /
      • foo.txt的

相反,我得到的是:

  • 目标/
    • MyPlugin.1.0.1.0 /
      • MyPlugin.1.0.1.0.nupkg
      • 内容/
        • 为myplugin /
          • foo.txt的

显然,结果与我的预期结果有两个关键方式:

  1. 我认为已安装的.nupkg将存储在其他位置 - 位于缓存位置。
  2. 从文档中我了解到content是一个在打包过程中使用的特殊文件夹,但不会在安装时创建。
  3. 我误解了什么?我怎样才能解决这个问题?

    请注意:我故意不指定packages.config或SolutionDirectory,因为我打算在运行时执行此nuget install以将插件添加到应用程序。也许我可以说服使用packages.config,但我不认为具体影响我目前得到的结果。

1 个答案:

答案 0 :(得分:0)

您看到的是nuget.exe命令行的预期行为。引用Balliauw:

  

由于NuGet命令行没有您可能想要定位的解决方案或项目的上下文,因此会将安装操作限制为在特定位置提取程序包。
  Balliauw,Maarten; Decoster,Xavier(2012-03-07)。 Pro NuGet(专业Apress)(Kindle Locations 1114-1115)。 Apress出版。 Kindle版。