微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – MSBuild在丢失的项目文件上强制编译失败

作为开发人员,我希望我的编译器(在本例中为Visual Studio中的MSBuild)在磁盘上缺少的任何csproj项目中包含文件时会严重失败.在目睹从网站上意外删除web.config之后,我想到了这个想法. MSBuild很乐意在没有它的情况下进行编译(并且在持续集成中也会这样做,因为它也只是运行MSBuild).

有没有办法强制MSBuild在构建成功之前检查所有解决方案项目中引用的所有文件是否存在?启用警告作为错误似乎不会这样做.事实上,查看输出,我没有看到任何文件丢失的通知.我知道它标记标记为“编译”的项目文件丢失文件,但是仅限内容文件呢?

解决方法

确实,如果将Content项设置为“Do not copy”,那么它不会在MSBuild中导致错误甚至是警告.但是,如果将其设置为“如果更新则复制”或将类型更改为“资源”(仍将其保留为“不复制”),则会触发错误.我能够将一个随机的.bak文件变成一个“资源”,对我的构建没有任何负面影响,我可以告诉他.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐