[英].Net Standard 2.0 Generate NuGet package including projects in the same solution and NuGet packages
我在这里读过一些与我类似的问题,但大约在一年前就得到了回答,我的想法是检查是否有任何关于此的消息。
假设我有一个具有以下结构的解决方案:
点网解决方案
项目C
-NugetPackageInsideProjectC
结构说明
这个项目的想法是从公共/私有云中检索文档,但我想让调用对调用者透明,所以我构建了这样的解决方案:
CloudHandler.Library.csproj引用CloudHandler.Services.Factory.csproj
CloudHandler.Services.Factory.csproj参考资料
CloudHandler.Plugin.Aws.csproj引用AWSSDK.S3
当我打包 CloudHandler.Library 甚至 CloudHandler.Services.Factory 时,使用此引用的项目会抛出异常,因为它找不到 AWSSDK.S3 引用。
如何打包包含所有引用的 DotNetProjectReferenceSubProjects? (这些项目引用的项目和 NuGet 包?)
提前致谢。
我已经阅读了一些建议添加 csproj 文件的想法,并且在 nuspec 上引用了它。 考虑以后维护项目,没有知识的人很难搞清楚。
传递依赖可以正常工作,但是您需要为每一层创建(和上传/管理)包; 仅仅为CloudHandler.Library
创建一个 nupkg 是不够的 -树中的所有内容都需要一个。
使用私有 package 缓存在本地完成,该缓存具有:
然后我可以创建一个测试项目:
<ItemGroup>
<PackageReference Include="CloudHandler.Library" Version="1.0.0"/>
</ItemGroup>
一切正常。 构建 output 包括 AWSSDK.Core.dll 和 ASWWDK.S3.dll 等。 测试项目可以看到扩展依赖树中的所有类型,尽管它只直接依赖于CloudHandler.Library
。
根据您的需要,这可能会促使您的包裹稍微少一些。 或者它可能正好适合您的需要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.