.net – 引用的依赖关系未复制到输出目录

前端之家收集整理的这篇文章主要介绍了.net – 引用的依赖关系未复制到输出目录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个CommonUtils lib我已经内置到一个dll,我从几个项目的文件引用。 CommonUtils取决于设置为文件引用的log4net.dll,而在构建CommonUtils.dll时copy-local = true。 log4net.dll和CommonUtils.dll不在GAC中。

MyWorkingProject中的一切都可以正常工作,其中只有一个文件引用到CommonUtils.dll – log4net.dll显示输出目录中(因为它是CommonUtils.dll的依赖关系,而不是从MyWorkingProject引用)。
但是,如果我创建一个新的项目来添加一些单元测试:MyWorkingProjectTest和项目引用MyWorkingProject,然后在这里再次引用CommonUtils.dll(我想使用一些CommonUtils),然后构建log2net.dll,这是项目的依赖引用和文件引用也没有被复制到输出目录。

有谁能澄清这里发生了什么?编译器不知道应该抓到哪个log4net.dll文件?有没有什么我在这里做错了?我应该以其他方式对log4net.dll进行明确的复制吗?
有没有意义,我必须明确地引用log4net吗?

这是设计。您需要考虑引用自动继承的含义。虽然您可以在逻辑上查看引用的内容,但编译器没有这样的描述。从理论上讲,如果整个依赖关系树走遍整个框架,那么最终可以重现框架和操作系统的很大一部分。

这绝对是一种痛苦,我同意并理解你的沮丧,但我认为微软无法找到合适的方式来做到这一点。

原文链接:https://www.f2er.com/javaschema/282168.html

猜你在找的设计模式相关文章