.dex文件转换成.class文件,.class文件转成java文件

.dex文件转换成.class文件

什么是.dex文件

dex文件是Android系统的可执行文件,包含应用程序的全部操作指令以及运行时数据。 由于dalvik是一种针对嵌入式设备而特殊设计的java虚拟机,所以dex文件与标准的class文件在结构设计上有着本质的区别。 当java程序编译成class后,还需要使用dex工具将所有的class文件整合到一个dex文件,目的是其中各个类能够共享数据,在一定程度上降低了冗余,同时也是文件结构更加经凑,dex文件是传统jar文件大小的50%左右。 dex将原来class每个文件都有的共有信息合成一体,这样减少了class的冗余。

参考文章:将DEX反编译为Java源代码

(1)下载d2j-dex2jar 压缩包,解压,里面长这个样

.dex文件转换成.class文件,.class文件转成java文件_第1张图片

 (2)执行命令,第一个路径是指定生成jar的路径  第二个路径是目标.dex文件路径

d2j-dex2jar.bat  -f -o D:/output_jar.jar D:/classes.dex

(3)可以将生成的jar作为zip解压,得到很多class文件

.class文件转成java文件

(1)下载jad工具,官网如下

JAD Java Decompiler Download Mirror

下载解压

.dex文件转换成.class文件,.class文件转成java文件_第2张图片

(2)进入上图的位置,执行命令

第一个路径是生成结果的文件夹,第二个路径是目标文件或文件夹

单文件转换

 jad -d D:/output -s java D:/Test.class

文件夹转换

jad -r -d D:/output -s java D:/test/**/*.class

你可能感兴趣的:(java,开发语言)