任何经历过VS2010慢速构建的人?

时间:2010-04-19 15:55:50

标签: visual-studio-2010

我们最近升级到VS2010的最终版本,并且与2008年相同的代码相比,构建时间非常慢。我想知道是否有其他人正在经历相同的事情,所以我可以确定它是否只是我们的环境或不?一些细节:

  • 在Windows 7上使用VS2010 Ultimate,使用相当强大的机器,与TFS 2010交谈。
  • 该解决方案已从VS2008升级,但仍然针对.NET 3.5和ASP.NET MVC 1.0构建。
  • 它似乎不是编译本身需要很长时间,而是构建过程中的其他东西。这是因为即使是最新且不需要编译的项目也需要几秒钟左右的时间来处理。
  • 这不是因为Visual Studio插件,因为团队中的几个人没有安装任何插件。
  • 加载VS2010后的第一个构建非常快,然后它们似乎随着时间的推移而减速。例如,我的解决方案中的项目刚刚在00:00:00.08之后重新启动后进行处理。 (该项目是最新的,不需要编译)然后我立即点击重建,它跳到00:00:01.33。
  • 我们也遇到了另一个使用.NET 4.0的解决方案的问题,该解决方案在VS2010 RC下构建完美。
  • 没有构建事件或类似的东西我可以责怪,只是直接的汇编构建。
  • 在慢速构建期间,IDE的响应速度不是很快。

其他人有类似的问题吗?

更新:看起来解析程序集引用需要很长时间。查看MSBuild诊断输出或上面的示例,第一个版本的ResolveAssemblyReferences有30ms,第二个版本有800ms。后续构建似乎需要更长时间的复制,例如CopyFilesToOutputDirectory从1ms跳到27ms。

6 个答案:

答案 0 :(得分:2)

发现问题;原来这是一个导致问题的流氓构建任务。在我的MVC网站项目中,我使用http://yuicompressor.codeplex.com/中的YUI Compressor任务来压缩我的脚本文件并将它们复制到我的JavaScript单元测试项目中。一切都很好,直到它运行,但一旦它运行它减慢了所有其他项目的构建!即使在解决方案中重建单个项目并且在MVC网站附近也没有进展缓慢。必须是任务中的泄漏或类似的东西...

答案 1 :(得分:2)

我也经常在VS2010上遇到极其缓慢的反应。我可以输入一个短语,坐下来看几秒钟后在屏幕上输入。即使没有调试,使用它的内部Web服务器也非常慢。它无法使用。

在Win7 Professional x32上运行它,在.NET 4.0上构建一个Web项目,在VS2008上从.NET 3.5转换而来,运行正常,但当我使用W2k3作为我的开发机器来保持加速时。

所有这些都是在大型计算机上使用Linux Ubuntu 10.4 x64上最新版本的VirtualBox(目前为V3.2.8 r64453)作为虚拟机运行的。 2个Intel i7 2.8GHz(8个虚拟内核),12GB内存,NVidia 9600 GPU,512MB RAM。

VM设置为Win7提供2个内核,4GB RAM和96MB视频RAM。 VT-x,2D&启用3D加速和嵌套页面。

VS2010已尝试使用和不使用硬件加速(因为它使用WPF显示它的文本编辑器![为什么???])。有了,你丢失了文本编辑器和菜单栏;没有,你得到一个几乎不可用的系统。我也安装了Reflection和Visual SVN。这台机器不用其他任何东西。手动运行Anti-Virus以降低负载!

[咆哮警告:] VS2010像狗一样运行,如果不是因为我已经花了11个月的时间为这个项目工作了一段时间,我已经工作了7年,我将用PHP重新开发响应式工具。我2年前为我的商业操作系统留下了M $ OS,正是因为冻结,减速和无法解释的变化需要数周时间才能提高生产力。成本不是问题,而是服务。 [Rant Over]

我知道有3个项目,VirtualBox,Win7& VS2010。我可能最好设置一个Win2008服务器虚拟机并在其上安装VS2010,我现在还不知道。

如果有人有任何线索如何让VS2010及时作出回应,我很乐意听到。

克雷格

答案 2 :(得分:0)

我在包含MSUnit项目的解决方案上有一些非常慢的构建时间(其中只有大约5个测试)。测试未设置为在每个构建或类似的东西上运行。当我卸载项目时,构建变得更快。

答案 3 :(得分:0)

只是为了任何人的缘故。我的编译时间很慢,因为扩展,禁用扩展和10倍速(可能是一个中的错误:s)

答案 4 :(得分:0)

一周前我遇到了同样的问题。重新安装.NET 4框架帮助了我。

答案 5 :(得分:0)

有同样的问题,通过将我的默认浏览器从IE更改为Chrome来解决它。