在Visual Studio中查找错误/警告

时间:2008-09-17 14:56:26

标签: visual-studio rebuild

我遇到过Visual Studio 2005的烦人问题...有时当我重建时,即使我做了重建解决方案,它也会返回时没有错误或警告,但是当我稍后编辑另一个代码文件时,即使没有更改它,重建,它也会在其他文件中找到错误或警告。显然,早期的Rebuild Solution没有重新编译该文件!如何强制VS完全重新编译每个文件?

6 个答案:

答案 0 :(得分:2)

我已经看到过这种情况发生在您的解决方案中有多个项目并且引用混淆之前。

假设您的解决方案中有四个项目,Common,Business,Data和UI。假设Common被其他三个项目引用。

我们想要的是Common是其他三个项目的“项目参考” - 然后他们将从Common的构建输出目录中获取他们的副本。

但是,有时候,其中一个项目会让它的参考混乱起来。在这种情况下,假设UI开始引用Data的构建输出目录中的Common副本。现在,任何编译“UI”而不编译“数据”的更改将导致两个可能不兼容的“Common”版本成为UI的依赖。

另一种情况是引用二进制文件,例如来自“lib”目录。然后,其中一个项目最终引用构建输出位置而不是lib。

我不知道是什么原因造成的 - 但不幸的是,我一直都在看。

修复是浏览每个项目的引用,找到指向错误位置的一个(或多个)。

答案 1 :(得分:1)

在重建之前清理解决方案可能会有所帮助 - 在解决方案资源管理器中右键单击解决方案并选择“清理解决方案” - 这会删除临时文件,并且应该清除bin和obj文件夹,所以一切重建。

答案 2 :(得分:1)

我在这里与Guy Starbuck在一起,但是会补充说Rebuild Solution应该做一个Clean Solution,然后是Build Solution,然后,它应该开始解决你的问题。但VS 2005在这方面可能很糟糕。有时它只是在几次重建后才开始工作。如果无法升级到2008,请考虑手动清除bin文件夹。

答案 3 :(得分:0)

这是否与Configuration Manager有关?在那里,您可以选择解决方案构建中的哪些项目。不确定这是否有帮助。

答案 4 :(得分:0)

根据警告的类型,如果我没记错的话,这是不可能的。

例如,仅在文件打开时才显示符合XHTML的警告消息。您可以检查VS内部的公差设置,看看是否可以更改它。

答案 5 :(得分:0)

这听起来很奇怪 - 无论更改如何,Rebuild都应该构建所有内容,Build应该只构建已更改的内容。

您所描述的行为只有在您修改了未更改文件所引用的内容以使其现在不正确时才会发生。