繁体   English   中英

MSBuild 成功但 Visual Studio 失败

[英]MSBuild successful but Visual Studio failed

我们正在使用 Jenkins 使用 msbuild 构建项目。

我添加了对现有项目的项目引用,但忘记将这些新项目添加到所有解决方案文件中。

我承诺了,但詹金斯告诉我一切正常。 我在命令行上尝试过:

msbuild test.sln /t:Rebuild /p:Configuration=Debug

在 Jenkins 和我的开发机器上有一个完全清除的工作目录,可以正常工作。 输出告诉我 msbuild 找到了该项目并构建它。

但是,如果我打开 Visual Studio 2017 并尝试构建该解决方案,它会告诉我无法找到依赖项目。

没错。

我如何强制 msbuild 仅构建解决方案文件中指定的项目,以便我们能够找到所有错过该新项目的解决方案?

顺便说一句:我们不需要提示如何找到需要包含该新项目的所有解决方案。 找到解决方案非常容易。

我如何强制 msbuild 仅构建解决方案文件中指定的项目,以便我们能够找到所有错过该新项目的解决方案?

避免 MSBuild 重建解决方案文件中列出的所有依赖项的默认行为的正确方法是将BuildProjectReferences属性设置为 false,因此构建命令行应为:

MSBuild Test.sln /t:Rebuild /p:Configuration=Debug /p:BuildProjectReferences=false

使用此命令行后,MSBuild 将在 VS 中出现相同的错误,因此我们能够找到所有遗漏该新项目的解决方案

在此处输入图片说明

注意: BuildProjectReferences会检查解决方案文件中列出的所有依赖项,所以请保持他的值为true,除非用于检查缺失的依赖项。

希望这会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM