eclipse - 如何查看 Eclipse 中触发 "Build workspace"的原因

我的 Eclipse 一直在运行“构建工作区”任务。这不是一个长期运行的构建,更像是每秒构建 1 个。 有时我会在“进度”选项卡中看到 10 个“构建工作区”任务正在休眠和等待。

我想知道是什么触发了这些构建。我安装了很多插件。 有什么方法可以解决这个问题?

最佳答案

这里有一些步骤可以帮助您调试正在发生的事情。

  1. 为您当前使用的任何版本的 Eclipse 下载 Eclipse Classic SDK。对于朱诺 that link is here .
  2. 为您当前的普通 Eclipse 打开 eclipse.ini 并添加以下选项:-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
  3. 启动您要调试的 Eclipse 实例,它应该在初始屏幕处暂停
  4. 解压 Eclipse 经典 SDK 并启动该 Eclipse 实例
  5. 打开插件 View
  6. 查找 org.eclipse.core.resources
  7. 右键单击并选择“添加到 Java 搜索”
  8. 打开类型对话框,输入“BuildManager”
  9. 您应该会看到该插件中的一个类作为选项提供,然后打开它
  10. 找到如下所示的行:prereqs = currentBuilder.build(trigger, args, monitor); 应该是第 728 行(对于 Eclipse Juno)
  11. 在此处设置断点
  12. 创建一个新的远程 Java 应用程序调试配置并指向 localhost 端口 8000
  13. 启动此调试配置
  14. 您应该会看到您的其他 Eclipse 实例启动

现在,每次 Eclipse 构建管理器触发构建(应该发生在所有这些 Build Workspace 作业上)时,您将看到此断点被命中,并且您可以找出正在触发的构建器。

更新 1

如果您需要其他 Eclipse 包的源代码,也可以将它们添加到“插件” View 中。选择那里的所有插件并右键单击并使用 Add to Java Search

关于eclipse - 如何查看 Eclipse 中触发 "Build workspace"的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9686439/

相关文章:

java - ClassCastException : ApiVersionImpl cannot

git - 如何将修订和构建日期添加到源?

c++ - 是否有人将 Maven/NAR 用于任何大型 C/C++ 项目?

c# - TeamCity 8 中的 DotCover 不起作用

android - ADT Eclipse + Gradle : incomplete BuildC

android - AOSP的 'lunch'组合是什么意思,需要选择什么?

javascript - ng build -prod 与 ng build --prod --bu

node.js - 用 postcss 观察多个 css 文件并输出一个 bundle.css

build - 使用 IntelliJ 进行远程构建

iphone - Xcode 4 代码签名中的 "Any iOS SDK"和 "Debug"有什么区