【发布时间】:2011-08-01 16:45:38
【问题描述】:
我发现 Visual Studio 很少有这样的行为。其中一个原因是这可能是因为项目是从 VS2008 升级而来的。
具体一点。假设项目之间存在依赖关系,其中 A 依赖于 B,B 依赖于 C,C 依赖于 D。
A
现在说 A 有错误,但 B、C 和 D 编译正确。
接下来发生的事情是每次我尝试编译 A 时,VS 都会编译所有四个项目。
命令:右击项目A,选择Build。
菜单中的相同行为:构建/构建 A
有没有办法确保 Visual Studio 仅在依赖项目发生更改时重新构建这些项目?目前 Visual Studio 会重建所有依赖项。
我注意到下面链接上的建议是将解决方案划分为逻辑组(然后我想直接引用 .dll)。如果这是最好的前进方式,是否让每个项目构建到一个通用的 .\bin 文件夹,然后从那里引用?
相关问题:Visual studio keeps building everything
如果我能保留一个大的解决方案文件,那就太棒了。
更新:
在此处描述的详细构建模式中发现了一个警告:http://support.microsoft.com/kb/2516078 虽然它似乎不相关。我还是要解决这个以防万一。 (现已修复,通过使用 $(VAR) 环境变量手动重新引用项目 + 路径提示)
将台扇直接指向笔记本电脑。由于过热,CPU 被节流。
检查每个项目并关闭自动序列化(在项目属性/构建屏幕中找到)
增加了工具/选项/构建和运行中的最大并行构建数。鉴于它只是一台具有两个内核的笔记本电脑,我认为这不会有帮助,但确实如此。
看到“之前已成功构建”...所以看起来希望的行为正在经常发生(仍在调查中)。不过现在情况好多了。
仍在查看详细的构建日志并整理内容。
【问题讨论】:
-
您使用的是什么版本的 Visual Studio?更重要的是,请举例说明什么对您不起作用,因为对于大多数人来说,它确实有效。
-
我的视觉工作室并没有重建一切。只有那些已更改或已更改的依赖项才会构建。
-
我在从以前的 VS 版本升级 sln 和项目文件时遇到了这个问题。在重新创建解决方案和项目后,我总是让它消失。
-
我很惊讶能找到相信诸如“Visual Studio 构建总是重建所有依赖项”之类的话的人。如果不让成千上万的开发人员对微软感到愤怒,这怎么可能是真的?
-
@Stephen Cleary:许多项目都是从 VS 2008 迁移而来的。我想知道这是否是问题所在。我会尝试一下。谢谢。
标签: c# .net visual-studio