依赖项的 nuget 依赖项
nuget dependencies of dependencies
我正在将我们的库项目放入私有 NuGet 提要中,我发现这些库相互之间存在混乱的依赖关系。未来可能会进行一些重构,但目前我的任务是按原样将它们放入 NuGet,我不确定依赖项的最佳实践是什么。
例如:
图书馆 B 需要图书馆 A。
图书馆 D 需要图书馆 C 和 B。
图书馆 E 需要图书馆 D.
现在,如果我使用 Manage NuGet Packages 来下拉库 E,它显然会发现整个依赖关系树并下拉库 A 到 D。
问题是,在库 E 的 .nuspec 文件中,我应该列出哪些依赖项?我应该只列出库 D 并让 NuGet 遍历那棵树并在有人抓住它时弄清楚它吗?或者它应该列出库 A 到 D,因为它们都出现在 packages.config 中,而你最终会把它们全部拉出来吗?
它将遍历依赖树以找到所有必需的包。我建了一些 3 深。
我认为最好通过设计允许这种情况发生,因为您希望这些包是独立的并且不直接使用 dll,因为这会导致其他冲突并破坏 NuGet 的目的。
我一直在使用 https://docs.nuget.org/ndocs/consume-packages/dependency-resolution#cousin-dependencies
和
https://docs.nuget.org/ndocs/create-packages/dependency-versions
作为参考。
我正在将我们的库项目放入私有 NuGet 提要中,我发现这些库相互之间存在混乱的依赖关系。未来可能会进行一些重构,但目前我的任务是按原样将它们放入 NuGet,我不确定依赖项的最佳实践是什么。
例如:
图书馆 B 需要图书馆 A。
图书馆 D 需要图书馆 C 和 B。
图书馆 E 需要图书馆 D.
现在,如果我使用 Manage NuGet Packages 来下拉库 E,它显然会发现整个依赖关系树并下拉库 A 到 D。
问题是,在库 E 的 .nuspec 文件中,我应该列出哪些依赖项?我应该只列出库 D 并让 NuGet 遍历那棵树并在有人抓住它时弄清楚它吗?或者它应该列出库 A 到 D,因为它们都出现在 packages.config 中,而你最终会把它们全部拉出来吗?
它将遍历依赖树以找到所有必需的包。我建了一些 3 深。
我认为最好通过设计允许这种情况发生,因为您希望这些包是独立的并且不直接使用 dll,因为这会导致其他冲突并破坏 NuGet 的目的。
我一直在使用 https://docs.nuget.org/ndocs/consume-packages/dependency-resolution#cousin-dependencies 和 https://docs.nuget.org/ndocs/create-packages/dependency-versions 作为参考。