首页 > 解决方案 > 为什么 Nuget 包不只包含引用的项目?

问题描述

我能够复制这种情况:

这是我的结构。净解决方案:

LibC - 项目 --references 外部 Nuget 包

LibB - 项目 --- 参考 LibC

LibA - 项目 --references LibB

当我使用 includeReferenedProjects 选项打包 LibA 时,我可以看到 LibB。如何防止 nuget 包/lib 文件夹包含 LibC dll 和外部 Nuget 包?这些是解决方案内部的。

LibA 包不应该只包含 LibB dll 吗?

标签: c#.netmsbuildnuget

解决方案


为什么 Nuget 包不只包含引用的项目?

这是 Github Issue 2897上的一个已知问题。但 NuGet 团队目前不打算实现此功能。

作为此问题的解决方法,您可以创建一个.nupsec仅包含引用项目的 LinB dll:

检查:从 dll 创建 nuget 包

如果你不想创建.nupsec文件,你可以从微软商店下载 NuGet 包资源管理器,然后编辑包信息,删除 LibC dll 并删除 nuget 依赖项(编辑->编辑元数据->编辑依赖项)

希望这可以帮助。


推荐阅读