要理解 Java 字节码,比较推荐的方法是自己尝试编写源码对照字节码学习。其中阅读 Java 字节码的工具必不可少。虽然javap可以以可读的形式展示出.class 文件中字节码,但每次改动源码都需调用命令行并不方便。这里介绍一个可以辅助阅读 Java 字节码的 Eclipse 插件:bytecode outline

bytecode outline 插件用可读的方式展现了 Eclipse 的 Java 编辑器或类文件的字节码内容。它使用了 ASM 框 架的部分组建来实现对字节码的展示(ASM 框架在另外一篇操纵 Java 字节码的博文中有提到过:《AOP 实践:java.lang.instrument 的使用》,是一个轻量级的 Java 字节码的操纵框架。)。

插件安装

直接使用 Update manager 安装插件,非常简单:

Help -> Install new Software... -> Work with:

输入 url:http://andrei.gmxhome.de/eclipse/

然后在弹框中选择合适的版本即可。

使用

在 Eclipse 中添加相应的查看窗口:

Window -> Show View -> Other -> Java -> Bytecode

选中某 Java 源文件,效果如图:

同时,还可以使用同样的方法,添加 Bytecode Reference 窗口,用于查询各个 Java 字节码的文档,示例如下:

原文地址:http://biaobiaoqi.me/blog/2013/10/25/java-bytecode-plugin-for-eclipse/
 版权声明:自由转载-非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0

【转】在Eclipse里查看Java字节码的更多相关文章

  1. 在Eclipse里查看Java字节码

    要理解 Java 字节码,比较推荐的方法是自己尝试编写源码对照字节码学习.其中阅读 Java 字节码的工具必不可少.虽然javap可以以可读的形式展示出.class 文件中字节码,但每次改动源码都需调 ...

  2. 3种骚操作,教你查看 Java 字节码!

    在我们工作.学习.以及研究 JVM 过程当中,不可避免的要查看 Java 字节码,通过查看字节码可以了解一个类的编译结果,也能通过编译器层面来分析一个类的性能. 字节码文件是不能直接打开的,下面栈长教 ...

  3. JVM 字节码指令手册 - 查看 Java 字节码

    JVM 字节码指令手册 - 查看 Java 字节码 jdk 进行的编译生成的 .class 是 16 进制数据文件,不利于学习分析.通过下命令 javap -c Demo.class > Dem ...

  4. 推荐一款IDEA神器!一键查看Java字节码以及其他类信息

    由于后面要分享的一篇文章中用到了这篇文章要推荐的一个插件,所以这里分享一下.非常实用!你会爱上它的! 开始推荐 IDEA 字节码查看神器之前,先来回顾一下 Java 字节码是啥. 何为 Java 字节 ...

  5. 用Eclipse插件Bytecode Outline来查看Java字节码

    在遇到一些小问题的时候我们经常会使用Javap反编译取得字节码来分析,虽然Javap能完成这个工作,但是有两个缺点,一方面操作麻烦,需要很多步骤,一方面没有文档注释,对新手来说看起字节码来比较麻烦. ...

  6. 在Myeclipse下查看Java字节码指令信息

         在实际项目开发中,有时为了了解Java编译器内部的一些工作,需要查看Java文件对应的具体的字节码指令集,这里提供两种方式供参考. 一.使用javap命令      javap是JDK提供的 ...

  7. 【Java字节码】Idea中查看Java字节码的插件jclasslib Bytecode viewer

    Idea插件搜索:jclasslib Bytecode viewer 安装完后,maven install你的项目(因为该插件会读取target下的class文件),然后选中某个java文件,按下图操 ...

  8. eclipse下查看java源码设置

    myway: 1.选择一函数,按住ctrl,显示open declaration(或按F3); 2.点进去: 如果未配置,点 source attachment configuration -- ex ...

  9. eclipse中查看java源码时,出现source not found问题

随机推荐

  1. Sql Server2005恢复备份数据库问题-Error:3154 3219

    解决办法: 1.新建一个同名数据库New_HeasySchoolDB2.执行下面的sql语句: restore database New_HeasySchoolDB from disk = 'D:/N ...

  2. jquery导航栏html页面跳转导航字体变色

    html代码: <div class="collapse"> <ul class="nav"> <li><a href ...

  3. 转:Directshow开发的一些例子

    DirectShow Filter 开发典型例子分析 --字幕叠加 (FilterTitleOverlay)1 本文分析一下<DirectShow开发指南>中的一个典型的Transform ...

  4. React Native入门遇到的一些问题

    本文示例参考自<React Native第一课> React Native官方文档中文版(含最新Android内容) 这里只大概记录下我的操作步骤和遇到的问题,一定要牢记下面这条: 如果你 ...

  5. 努力学习 HTML5 (2)—— 元素的增和删

    HTML5 放松了某些规则,HTML5 的制定者想让这门语言更紧密地反映浏览器的现实. 放松的规则 不要求包含 <html>.<head> 和 <body> 元素. ...

  6. 用eclipse建立servlet工程

    1.打开eclipse,选择[文件]|[新建]|[项目] 2.选择[Tomcat  Project]后单击下一步,输入项目名[TestTomcat],选择下一步,将[Can update contex ...

  7. Linux之重定向

    Linux重定向是指修改原来默认的一些东西,对原来系统命令的默认执行方式进行改变,比如说简单的我不想看到在显示器的输出而是希望输出到某一文件中就可以通过Linux重定向来进行这项工作. Linux默认 ...

  8. 菜鸟调错(八)—— Maven编译错误:不兼容的类型的解决方案

    泛型在实际的工作中应用非常广泛,关于泛型就不在这里赘述了,感兴趣请戳<重新认识泛型>.项目中用到了如下的泛型: public <T> T query(String sql, R ...

  9. C# 用代码创建 DataSet 和 DataTable 的列和记录

    System.Data.DataSet objSet = new DataSet(); System.Data.DataTable objTable = new DataTable("tes ...

  10. wpf xaml inlines

    string testBold = "<Bold>Sync Now</Bold>";           var ele = System.Windows. ...