精华内容
下载资源
问答
  • java编译和反编译命令

    2020-12-13 18:00:57
    文章目录编译命令反编译命令 编译命令 javac 类名.java 反编译命令 javap 类名.java

    编译命令

    javac 类名.java
    

    反编译命令

    javap 类名.class
    
    展开全文
  • 总结javap是jdk自带的反解析工具。...javap的用法格式:javap 其中classes就是你要反编译的class文件。 在命令行中直接输入javap或javap -help可以看到javap的options有如下选项:-help --help -? ...

    总结

    javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。

    javap的用法格式:

    javap

    其中classes就是你要反编译的class文件。 在命令行中直接输入javap或javap -help可以看到javap的options有如下选项:

    -help --help -? 输出此用法消息

    -version 版本信息,其实是当前javap所在jdk的版本信息,不是class在哪个jdk下生成的。

    -v -verbose 输出附加信息(包括行号、本地变量表,反汇编等详细信息)

    -l 输出行号和本地变量表

    -public 仅显示公共类和成员

    -protected 显示受保护的/公共类和成员

    -package 显示程序包/受保护的/公共类 和成员 (默认)

    -p -private 显示所有类和成员

    -c 对代码进行反汇编

    -s 输出内部类型签名

    -sysinfo 显示正在处理的类的系统信息 (路径, 大小, 日期, MD5 散列)

    -constants 显示静态最终常量

    -classpath 指定查找用户类文件的位置

    -bootclasspath 覆盖引导类文件的位置

    一般常用的是-v -l -c三个选项:

    javap -v classxx,不仅会输出行号、本地变量表信息、反编译汇编代码,还会输出当前类用到的常量池等信息。

    javap -l 会输出行号和本地变量表信息。

    javap -c 会对当前class字节码进行反编译生成汇编代码。

    javap 分析装箱拆箱

    关于equals比较

    double i0 = 0.1;

    Double i1 = new Double(0.1);

    Double i2 = new Double(0.1);

    System.out.println(i1.equals(i2)); //true 2个包装类比较,比较的是包装的基本数据类型的值

    //javap 分析这句话

    System.out.println(i1.equals(i0)); //true 基本数据类型和包装类型比较时,会先把基本数据类型包装后再比较

    基本数据类型和包装类比较时,会先把基本数据类型包装成对应的包装类型,再进行比较。这一点可以通过查看.class字节码来证明:

    8c7f61a5ce864f68884e53bf47be3000.png

    关于 == 比较

    对于基本数据类型,==(双等号)比较的是值,而对于包装类型,==(双等号)比较的则是2个对象的内存地址。

    double i0 = 0.1;

    Double i1 = new Double(0.1);

    Double i2 = new Double(0.1);

    System.out.println(i1 == i2); //false new出来的都是新的对象

    //javap 分析这句话

    System.out.println(i1 == i0); //true 基本数据类型和包装类比较,会先把包装类拆箱

    基本数据类型和包装类型比较时,会先把包装类拆箱再进行值比较(和equals是反的)。这个也可以通过查看字节码来证明:

    a228fa59746d7788ce45132497f38378.png

    展开全文
  • Android 反编译命令

    2020-04-27 11:00:29
    反编译资源文件 apktool d -f flyme-res_temp.apk 反编译odex文件 java -jar baksmali.jar x XXX.odex 打包成dex文件 java -jar smali.jar as out/ dex反编译成jar文件 d2j-dex2jar.sh XXX.dex 查看...

    反编译资源文件

    apktool d -f flyme-res_temp.apk

     

    反编译odex文件

    java -jar baksmali.jar x XXX.odex

     

    打包成dex文件

    java -jar smali.jar as out/

     

    dex反编译成jar文件

    d2j-dex2jar.sh XXX.dex

     

    查看源码

    jd-Gui导入jar包查看源码

    注:需要安装apktoll和jd-Gui

    查看so库的符号表和地址

    nm -Do libbinder.so

     

    展开全文
  • 平常开发过程中常使用jadx反编译工具进行反编译过程。其实,对于简单的反编译工作亦可以使用JDK自带的命令行工具javap。

    版权声明

    • 本文原创作者:谷哥的小弟
    • 作者博客地址:http://blog.csdn.net/lfdfhl

    javap概述

    平常开发过程中常使用jadx反编译工具进行反编译过程。其实,对于简单的反编译工作亦可以使用JDK自带的命令行工具javap。

    javap使用方式

    使用语法

    javap class文件路径
    

    使用示例

    在这里插入图片描述

    展开全文
  • 首先,看一下jad的帮助提示-a - 用JVM字节格式来注解输出-af - 同 -a,... }, default: no)-d - 指定输出文件的文件目录-dead -试图反编译代码的dead 部分(default: no)-disass - 不用用字节码的方式反编译 (no JAV...
  • 最近才发现一个小模块(dis), 居然可以直接解析出bytecode, 对于研究和理解Python有很大的帮助调用dis.dis函数反编译函数def myfunc(alist):return len(alist)dis.dis(myfunc)得到如下结果,2 0 LOAD_GLOBAL ...
  • java编译与反编译命令

    2019-08-07 14:49:37
    反编译 javap -p xxx.class 用法摘要: -help 帮助 -l 输出行和变量的表 -public 只输出public方法和域 -protected 只输出public和protected类和成员 -package 只输出包,public和protected类和成员,这是默认的 -p -...
  • java反编译命令javap

    2019-05-18 00:22:27
    反编译 .class 文件命令: 可在 .class 文件所在目录执行如下命令 javap -c -l -private 反编译的文件名称.class 补充说明: -help --help -? 输出此用法消息 -version 版本信息 -v -verbose 输出附加信息...
  • 1.首先进入java文件所在的地址 1) e:/ 2) dir (显示所有文件) 3) cd eclipse-workspace 2.使用javac命令编译Test.java文件,得到Test...3.使用javap命令反编译Test.class文件 javap -c -verbose Test.class...
  • Java反编译命令

    2020-09-17 19:32:44
    参考资料:javap命令解析 Java中字符串相加和字符串常量相加区别
  • jad反编译命令

    2015-11-03 13:28:00
     -r:反编译并建立和java包一致的文件夹路径;  -d:指定反编译的文件输出路径;  -s:指定反编译成成的文件后缀名;(如果不指定的话,默认是.jad文件,用文本编辑器打开看,就是java代码);  命令解释:把...
  • 反汇编函数 需要注意的是上面的命令行反编译的形式,不能自动的递归反编译函数,所以我们要使用在文件中导入dis的模式进行反编译,就像下面这样。 运行命令 python3dis_function.py 然后得到以下结果 要查看函数的...
  • Java 反编译命令javap

    千次阅读 2017-11-28 11:04:48
    javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器...一般情况下,很少有人使用javap对class文件进行反编译,因为有很多成熟的反编译工具可以使用,比如jad。但是,javap还可以查看java编译
  • 如果有的时候单给出class文件,要快速看这个class文件的JDK版本号等,其实不用工具,也可以用JDK自带的javap命令进行反编译输出,下面小结其用法:1,javap -verbose 类名得到的信息如下:Compiled from...
  • JVM-javap反编译命令

    2021-01-22 19:01:41
    javap是jdk自带的解析工具。它的作用就是根据class字节码文件,解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。 javap 用法: javap <options> <...
  • 最近在捣鼓dts方面的东西,有时候会担心自己配置的dts是否正确的问题。当我们编译kernel时,有时会担心我们的配置结果是什么样子的。...安装命令: sudo apt-get install device-tree-compiler 编
  • javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码。一般情况下,很少有人使用javap对class文件进行反编译,因为有很多成熟的反编译工具可以使用,比如jad。但是,javap还可以查看java...
  • arm平台的反编译命令

    千次阅读 2014-11-19 23:21:08
    在gem5的arm arm-linux-objdump -D -b binary -m arm xxx.bin > xxx.asm ...-D 反编译所有代码 -m 主机类型, arm -b 文件格式, binary 对于ELF格式的文件只要一个-D参数即可 就可以把xxx.bin反汇编到xxx.asm文件
  • chm反编译命令参数

    2013-07-13 00:57:24
    HH.EXE -decompile
  • javap命令所有参数如下图所示: 内容回家补充 Eclipse中配置javap命令,请参考我的另一篇博客:Eclipse中配置javap命令

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,757
精华内容 1,102
关键字:

反编译命令