[英]When I tried to build my solution using MSBuild, its launches Visual Studio
[英]MsBuild deletes dependency dlls when I build, then debug in Visual Studio
我有一个具有以下简化的依赖项结构的项目(总共有很多项目)。
MainWindow
|- UserControl
|- Library
|- ExternalLib.dll
ExternalLib.dll是具有始终复制功能的内容资源。
当我构建项目时,它可以正确地将ExternalLib复制到我的输出文件夹中。 如果再单击“调试”,它将重建我的Library和UserControl项目并删除我的ExternalLib.dll。
在MSBuild构建日志中,我看到以下内容:
5>Task "Delete"
...
5> Deleting file "/path/to/bin/ExternalLib.dll".
5>Done executing task "Delete".
为什么MsBuild会删除我正在构建的项目所依赖的项目的依赖关系?
我想到了。 显然,如果您有一个项目结构,其中A引用B引用了C,如果A不需要C,则编译器“足够聪明”以删除C。
因为在我的主应用程序中对ExternalLib的引用是通过反射进行的,所以编译器认为我不需要ExternalLib。
该问题可以通过两种方式解决:
我个人选择了第二个选项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.