eclipse - 如何在eclipse IDE中查看Java的字节码?

标签 eclipse file class editor bytecode

有时,在 Eclipse 中,我按组合键会将我带到显示 .class 文件(字节码)内容的编辑器页面。我似乎永远记不起那个组合键是什么。

有人可以告诉我吗?

或者换句话说,如何才能看到自己的字节码?

最佳答案

Eclipse 的默认类文件查看器会显示源代码(请参阅 VonC 的答案)(如果它已与二进制文件关联),否则它会提供类似 javap 的类 View (带有附加源代码的选项)。我猜您正在寻找的是后者。

我从未找到一种方法来彻底强制 Eclipse 显示该输出而不是链接的源代码。您可能需要一个提供 Javap 类似功能(或 javap 接口(interface))的 Eclipse 插件。寻找声明它们“反汇编”的插件(而不是“反编译”,如 jad)。

除非使用插件,您可能可以配置外部工具来执行 javap,但它可能无法与其他 Eclipse 功能很好地配合。

编辑:让我澄清一下上面的内容:如果您按 F3,Eclipse 会执行以下操作(通常,实际过程可能略有不同):

  1. 解析目标(如果您选择 Java 文件,则它将是 Java 文件本身;如果您选择或光标位于类名上,则它将是类声明,类似于方法声明等) .
  2. 在构建路径(首先是同一项目)中搜索包含目标的 Java 文件。如果找到,则打开一个可写编辑器,显示该 Java 源文件。
  3. 对于类/方法声明,它会继续在构建路径上搜索包含该声明的类文件的引用。如果找到,则

    a) 如果类文件已附加源代码,请打开链接的 Java 文件的只读编辑器。

    b) 如果类文件没有附加源代码,则打开一个只读面板,显示已编译类文件的反汇编(类似 javap)字节码。

我的猜测是,您认为 3.b) 有一个专用的按键序列,但我认为不存在。但同样,我很乐意在这里被证明是错误的。

关于eclipse - 如何在eclipse IDE中查看Java的字节码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3062528/

相关文章:

c - 读取 .bin 文件的某些部分(例如从 11 日到 23 日): hex into int, 字符串。 C

c - 使用 eclipse 从 C 开始

Eclipse GitLab 克隆问题 "Malformed input or unmappable characters"

java - 从文本文件中读取一行而不是整个文件(使用 bufferedreader)

java - 如何强制使用其他风格的 Android Studio `see` 源代码,以便抽象类的重构更安全

java - JMock 期望中的第二组括号

java - 从 'separated' 类访问多个变量(不可见)

eclipse - 如何使 eclipse "File Search"也可以在包含一些文本的源 jar 中进行搜索?

c++ - c++ 友元函数的问题

java - Netbeans 清理和构建类