88

构建工作区进程运行时 Eclipse 在做什么?我可以禁用它吗,因为它需要很长时间才能完成,我不知道是否有必要。谢谢

4

4 回答 4

105

构建工作空间是关于在当前使用的工作空间中打开的项目之一中检测到的任何演变的增量构建。

您也可以通过菜单“ Project / Build automatically”禁用它。

但我建议首先检查:

  • 如果 Project Clean all / Build 导致相同类型的长时间等待(禁用此选项后)
  • 如果您有(这次是自动激活构建)一些验证选项,您可以禁用它们以查看它们是否对全局编译时间有影响(Preferences / Validations或者Preferences / XML / ...您是否安装了 WTP)
  • 如果引用相同工作区的全新 Eclipse 安装(有关更多信息,请参阅此 eclipse.ini)导致相同的问题(自动激活构建)

请注意,错误 329657(2011 年开放,2014 年进行中)是关于中断(太长)构建,而不是取消它:

构建中断和取消之间有一个重要的区别。

  • 当构建被取消时,它通常通过丢弃增量构建状态并让下一个构建完全重建来处理这个问题。这在某些项目中可能非常昂贵。
    作为用户,我认为我宁愿等待 5 秒的增量构建完成,也不愿取消并在之后进行 30 秒的重建。

  • 中断的想法是构建器可以通过保存其中间状态并在下一次调用中恢复来更有效地处理中断。
    在实践中,这很难实现,因此最常见的边界是我们在调用链中的每个构建器之前/之后检查中断。

 

于 2010-03-24T05:00:40.937 回答
15

您可以切换到手动构建,以便控制何时完成。只需确保Project > Build Automatically未选中主菜单中的选项即可。

于 2010-03-24T03:56:56.910 回答
3

如果需要从 PDE 或 JDT 代码编程:

public static void setWorkspaceAutoBuild(boolean flag) throws CoreException 
{
IWorkspace workspace = ResourcesPlugin.getWorkspace();
final IWorkspaceDescription description = workspace.getDescription();
description.setAutoBuilding(flag);
workspace.setDescription(description);
}
于 2013-07-21T08:50:43.627 回答
0

对于遇到未选中自动构建但项目仍在构建中的问题的任何人。确保您的项目未部署到服务器选项卡中的服务器并被告知保持同步。

于 2019-10-23T20:03:15.477 回答