为解决方案生成nuspec文件

本文关键字:nuspec 文件 解决方案 | 更新日期: 2023-09-27 18:27:47

我们的情况可能并不理想,但我们有一个包含大约10个核心库的解决方案,这些库具有各种依赖关系。我们试图转移到Nuget以获得此解决方案的依赖项,并将此解决方案中的库打包到Nuget包中。

似乎没有办法生成一个将解决方案中的所有项目都考虑在内的nuspec文件。我认为,如果我们想要一个包,就不能有多个nuspec文件,那么我们是手动管理nuspec,还是构建自己的工具来查看所有项目并生成文件?是否有其他替代方案可以生成nuspec文件,并且仍然拥有我所布局的所有dep和程序集?

为解决方案生成nuspec文件

听起来你正在构建某种框架,我目前正处于为我们的库设置这种解决方案的相同位置,所以,我将尝试解释我目前的计划,

  1. 为所有库创建nuspec
  2. 为整个框架创建一个主项目,为该项目创建一个nuspec
  3. 将所有库的nuget依赖项添加到主框架nuspec文件中(请参阅关于依赖项的官方参考)

这样,您只需要在想要使用它的项目中添加/更新framework nuget包,所有的lib都会被添加。

我们决定采取错误的方式;由于许多基础库本身都有依赖关系(例如,我们有一个项目包含MVC 3特定的代码),我们最终将它们单独打包,使用基于每个项目文件生成的NuSpec文件。这样,我们就不会强制下游依赖关系,除非你真的在使用MVC 3。