使用 eclipse 调试 OpenJDK 源代码



在我的项目中,我想使用 eclipse 调试 OpenJDK 版本 8 的 C/C++ 源代码。为此,我做了以下工作:

  1. 使用此自述文件编译了 OpenJDK8--with-debug-level=slowdebug
  2. 将源生成文件项目导入 eclipse
  3. 创建了一个 eclipse 运行配置,针对编译的 OpenJDK 的 java 执行 gdb.exe并针对示例 Java 程序。在这个配置中,我附加了JDK源代码目录路径,以便eclipse能够将调试符号转换为源代码行并查看它们(显然(

使用这种方法,我能够通过像java.c这样的文件代码进行调试。

我的问题是我不知何故仍然无法通过本机代码进行调试。例如java.lang.System.currentTimeMillis().

对我来说,看起来库没有包含在 eclipse gdb-run 中。我尝试手动运行 gdb,但仍然无法通过该代码部分进行调试。

是否有人有过相同的行为,或者曾经尝试调试过JDK源代码?我想我在这里错过了一些东西...也许我的方法不适合这项任务?很高兴听到任何关于如何正确调试JDK源代码的建议。

提前谢谢你。

您可能需要通过右上角的甲虫图标强制 eclipse 进入调试模式。

另一种可能的选项是使用 assert(false( 行而不是断点。

最后,您可能需要在 Eclipse 项目设置中指定编译器。 请记住,Eclipse 调试器并不适用于所有编译器,通常是因为链接器不兼容。我建议在网上查找兼容性列表。

最新更新