赞
踩
在使用 ASM 插入字节码代码时、如果不熟悉字节码相关语法和规则 可能对于插入 字节码代码 就束手无策了、幸好 ASM官方开发了一款IDE插件,可以将 Java代码 转换成 ASM 字节码类型代码,这样再使用 ASM 插入字节码时就比较方便了,下面就看一下如何使用了。
ASM Bytecode Outline 插件地址:https://plugins.jetbrains.com/plugin/5918-asm-bytecode-outline
下面看一下如何在 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;
}
}
之后 在当前类文件上 右击 在出现的菜单上选择: Show Bytecode outline
之后会出现 一个面板、在当前面板下会显示当前Java 代码对应的字节码文件如下:
当前面板下有三项内容:
ASMified 文件如下:
Groovified 文件如下:
从上述文件可以看到 完全可以利用 ASM 框架生成 class 文件而且和 Java源文件编译的class 文件完全一致。
在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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。