我正在寻找一种私密的方式'引用一个MSBuild项目,以便它不会显示给NuGet包的用户。例如,假设我有两个库, LibFoo 和 LibBar 。他们在单一解决方案下组织起来,如下所示:
Foobar.sln
|
---- LibFoo.csproj
|
---- LibBar.csproj
现在,假设LibFoo引用了LibBar。当我去构建LibFoo时,也构建了LibBar。生成的二进制文件都包含在LibFoo的输出目录中。当我nuget pack
将它们作为NuGet包的一部分包含在目录中时,也会包含LibBar的二进制文件。
最后,当最终用户安装LibFoo时,NuGet继续并引用包中的所有内容,包括LibBar 。
有没有办法防止这种情况发生?
答案 0 :(得分:2)
我想不可能直接排除dll,但你可以明确指定应该引用哪些程序集。这反过来做你想要的,因为所有未指定的程序集都不会被添加为参考。