当前位置:   article > 正文

ASM-使用ASM Bytecode Outline插件查看字节码

asm bytecode outline

使用ASM Bytecode Outline插件查看字节码

前言

在使用 ASM 插入字节码代码时、如果不熟悉字节码相关语法和规则 可能对于插入 字节码代码 就束手无策了、幸好 ASM官方开发了一款IDE插件,可以将 Java代码 转换成 ASM 字节码类型代码,这样再使用 ASM 插入字节码时就比较方便了,下面就看一下如何使用了。

ASM Bytecode Outline 插件地址:https://plugins.jetbrains.com/plugin/5918-asm-bytecode-outline

Intellij IDEA使用

下面看一下如何在 IDEA 安装插件:

1.安装插件

在 preferences > Plugins 中 输入 asm bytecode outline 如下:

在这里插入图片描述
点击 install 安装、安装完毕后 重启 IDEA 之后在 Plugins - Installed 中 和 右侧出现工具栏说明安装已经成功!

在这里插入图片描述

2. 如何使用

安装完成插件之后 可以先编写一份 简单的Java源代码如下:

package com.java.design.source.class_byte;

public class ByteMain {

    private int a = 1;

    public int add() {
        int b = 2;
        int c = a + b;

        return c;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

之后 在当前类文件上 右击 在出现的菜单上选择: Show Bytecode outline

显示字节码
之后会出现 一个面板、在当前面板下会显示当前Java 代码对应的字节码文件如下:

在这里插入图片描述
当前面板下有三项内容:

  • Bytecode 表示对应的class字节码文件
  • ASMified 表示利用ASM框架生成字节码对应的代码
  • Groovified 对应的是class字节码指令

ASMified 文件如下:

在这里插入图片描述
Groovified 文件如下:

在这里插入图片描述
从上述文件可以看到 完全可以利用 ASM 框架生成 class 文件而且和 Java源文件编译的class 文件完全一致。

Android Studio 使用

在Android studio 上的安装和使用和 在 IDEA 的方式是一致的,所以就不在赘述了,直接参考上面的文章就行了。

存在的问题

目前Android studio 的插件在我使用的过程中发现 此插件不支持 分析 kotlin 代码,会在使用的过程中 会报如下错误:

Error:Kotlin: Unsupported plugin option: org.jetbrains.kotlin.android:enabled=true

在这里插入图片描述

所以我暂时也没有找到解决方案,如果有人知道请在下方留言告诉我一下,谢谢!

参考

https://plugins.jetbrains.com/plugin/5918-asm-bytecode-outline

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/224172
推荐阅读
相关标签
  

闽ICP备14008679号